怎样在html页面长调用本页面的js方法呀?
<SCRIPTlanguage="javascript">functionAddFile(){varfile=document.getElementById("div1"...
<SCRIPT language="javascript">
function AddFile()
{
var file = document.getElementById("div1").firstChild;
if(file.value == "")
{
alert("请选择文件!");
return;
}
var ary = file.value.split("\");
var filename = ary[ary.length-1];
var bAddFile = true;
if(CheckOptionsExists(filename,document.getElementById("ListBox1")))
{
alert("文件已经存在列表中!");
div1.removeChild(file);
bAddFile = false;
}
var f = document.createElement("input");
f.type = "file";
f.name = "file"
div1.insertBefore(f,div1.firstChild);
if(!bAddFile)
{
return
}
var o = new Option();
o.innerText = filename;
o.value = file.uniqueID;
document.getElementById("ListBox1").appendChild(o);
file.style.display = "none";
}
function RemoveFile()
{
var lst = document.getElementById("ListBox1");
if(lst.selectedIndex == -1)
{
alert("请选择要删除的附件!");
return;
}
var id = lst.value;
div1.removeChild(document.all[id]);
lst.removeChild(lst.options[lst.selectedIndex]);
div1.firstChild.style.display = "";
}
//检查选项是否存在.
function CheckOptionsExists(value,ddl)
{
for(var i=0;i<ddl.options.length;i++)
{
if(ddl.options[i].innerText == value)
{
return true;
}
}
return false;
}
</SCRIPT>
<input type="button" value="添加附件" onclick="javascript:AddFile();" />
<input type="button" value="删除附件" onclick="javascript:RemoveFile();" />
报错说找不到AddFile()和RemoveFile()方法 展开
function AddFile()
{
var file = document.getElementById("div1").firstChild;
if(file.value == "")
{
alert("请选择文件!");
return;
}
var ary = file.value.split("\");
var filename = ary[ary.length-1];
var bAddFile = true;
if(CheckOptionsExists(filename,document.getElementById("ListBox1")))
{
alert("文件已经存在列表中!");
div1.removeChild(file);
bAddFile = false;
}
var f = document.createElement("input");
f.type = "file";
f.name = "file"
div1.insertBefore(f,div1.firstChild);
if(!bAddFile)
{
return
}
var o = new Option();
o.innerText = filename;
o.value = file.uniqueID;
document.getElementById("ListBox1").appendChild(o);
file.style.display = "none";
}
function RemoveFile()
{
var lst = document.getElementById("ListBox1");
if(lst.selectedIndex == -1)
{
alert("请选择要删除的附件!");
return;
}
var id = lst.value;
div1.removeChild(document.all[id]);
lst.removeChild(lst.options[lst.selectedIndex]);
div1.firstChild.style.display = "";
}
//检查选项是否存在.
function CheckOptionsExists(value,ddl)
{
for(var i=0;i<ddl.options.length;i++)
{
if(ddl.options[i].innerText == value)
{
return true;
}
}
return false;
}
</SCRIPT>
<input type="button" value="添加附件" onclick="javascript:AddFile();" />
<input type="button" value="删除附件" onclick="javascript:RemoveFile();" />
报错说找不到AddFile()和RemoveFile()方法 展开
5个回答
展开全部
加了几个注释,你看吧。另外,想调试的话,可以在firefox下装firebug的插件。
<SCRIPT language="javascript">
function AddFile()
{
var file = document.getElementById("div1").firstChild ; //有可能得不到这个DOM,下面要加一个判断
if (null==file){
alert("请选择文件!");
return;
}
if(file.value == "")
{
alert("请选择文件!");
return;
}
var ary = file.value.split("\\"); // 要加\转意
var filename = ary[ary.length-1];
var bAddFile = true;
if(CheckOptionsExists(filename,document.getElementById("ListBox1")))
{
alert("文件已经存在列表中!");
div1.removeChild(file);
bAddFile = false;
}
var f = document.createElement("input");
f.type = "file";
f.name = "file"
div1.insertBefore(f,div1.firstChild);
if(!bAddFile)
{
return
}
var o = new Option();
o.innerText = filename;
o.value = file.uniqueID;
document.getElementById("ListBox1").appendChild(o);
file.style.display = "none";
}
function RemoveFile()
{
var lst = document.getElementById("ListBox1");//有可能得不到这个DOM,下面要加一个判断
if(lst==null){
alert("请选择要删除的附件!");
return;
}
if(lst.selectedIndex == -1)
{
alert("请选择要删除的附件!");
return;
}
var id = lst.value;
div1.removeChild(document.all[id]);
lst.removeChild(lst.options[lst.selectedIndex]);
div1.firstChild.style.display = "";
}
//检查选项是否存在.
function CheckOptionsExists(value,ddl)
{
for(var i=0;i<ddl.options.length;i++)
{
if(ddl.options[i].innerText == value)
{
return true;
}
}
return false;
}
</SCRIPT>
<input type="button" value="添加附件" onclick="javascript:AddFile();" />
<input type="button" value="删除附件" onclick="javascript:RemoveFile();" />
<SCRIPT language="javascript">
function AddFile()
{
var file = document.getElementById("div1").firstChild ; //有可能得不到这个DOM,下面要加一个判断
if (null==file){
alert("请选择文件!");
return;
}
if(file.value == "")
{
alert("请选择文件!");
return;
}
var ary = file.value.split("\\"); // 要加\转意
var filename = ary[ary.length-1];
var bAddFile = true;
if(CheckOptionsExists(filename,document.getElementById("ListBox1")))
{
alert("文件已经存在列表中!");
div1.removeChild(file);
bAddFile = false;
}
var f = document.createElement("input");
f.type = "file";
f.name = "file"
div1.insertBefore(f,div1.firstChild);
if(!bAddFile)
{
return
}
var o = new Option();
o.innerText = filename;
o.value = file.uniqueID;
document.getElementById("ListBox1").appendChild(o);
file.style.display = "none";
}
function RemoveFile()
{
var lst = document.getElementById("ListBox1");//有可能得不到这个DOM,下面要加一个判断
if(lst==null){
alert("请选择要删除的附件!");
return;
}
if(lst.selectedIndex == -1)
{
alert("请选择要删除的附件!");
return;
}
var id = lst.value;
div1.removeChild(document.all[id]);
lst.removeChild(lst.options[lst.selectedIndex]);
div1.firstChild.style.display = "";
}
//检查选项是否存在.
function CheckOptionsExists(value,ddl)
{
for(var i=0;i<ddl.options.length;i++)
{
if(ddl.options[i].innerText == value)
{
return true;
}
}
return false;
}
</SCRIPT>
<input type="button" value="添加附件" onclick="javascript:AddFile();" />
<input type="button" value="删除附件" onclick="javascript:RemoveFile();" />
追答
file.value的值是 null.
下面这段可以改成
if(file.value == "" || file.value==null)
{
alert("请选择文件!");
return;
}
另外,看起来你要调试的东西太多了,还是别用IE换 firefox + firebug吧。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的那个file.value根本就是undefined,你可以用console.log(file.value)试试,ie上你就用alert(file.value)测,undefined的东西你在那判断,判断个什么。。。
如果这是你的全部代码话,我可以判定你是拷贝的或者是照着别的代码硬改的。请问getElementById("ListBox1")和getElementById("div1")你的id="Listbox1"在哪,你的id="div1"在哪,当然这都是小问题。接下来是你的html中如果是<div id="div1"><div></div></div>那么我明确告诉你file.value是undefined的,没有value这个属性,如果是<input type="text" id="div1"/>那么我再明确告诉你,这个东西没有.firstchild
如果这是你的全部代码话,我可以判定你是拷贝的或者是照着别的代码硬改的。请问getElementById("ListBox1")和getElementById("div1")你的id="Listbox1"在哪,你的id="div1"在哪,当然这都是小问题。接下来是你的html中如果是<div id="div1"><div></div></div>那么我明确告诉你file.value是undefined的,没有value这个属性,如果是<input type="text" id="div1"/>那么我再明确告诉你,这个东西没有.firstchild
追问
哦哦 我就是用的
那个getElementById("ListBox1") 是一个listrbox的ID 用于显示导入的数据的
其实我想做的就是一个导入导出,你有更好的可以给我发一个呀,谢谢啦!
追答
js只能解决前端的东西,你的代码修改得完全没有问题也无非就是传上去一个文件名而已,而且它的存在没有意义,因为js操作相当于是在客户端进行的,你的文件就算能够上传,上传到哪里?上传是要上传到服务器的,你不会以为上传到页面,就大家都可以用了吧,就好像你写了个文档没保存有什么用。还得要用后台来解决。
看你好像使用的asp,给你两个链接参考吧,http://www.111cn.net/wy/js-ajax/35811.htm,
http://www.cnblogs.com/eva_2010/articles/1986719.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<SCRIPT language="javascript">
TO
<script type="text/javascript">
更多追问追答
追问
或者
这个,不是和javascript:AddFile();一样的效果吗?
追答
<script type="text/javascript">
function testbutton(){}
</script>
<input type="button" value="test" onclick="testbutton();" />
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询