表单提交中form.action,form.submit()问题


这两天做列表数据显示的时候,几乎被"对象不支持此属性和方法" 的错误提示搞疯掉了,两个完全一样的程序(事后才知道有个单词的大小写

不一样),竟然一个显示正常,一个却频繁提示出错。

在一般情况下,同一个表单只能被提交给同一个地址。但在实际web应用中,我们希望同一个表单可以根据用户的选择来完成不同的操作,即表

单的分向提交。比如说:在一个网站后台用户管理系统中,我需要对一些恶意的用户进行批量解锁,锁定用户或者删除的操作,当我从select

中选择删除会员时,我们希望表单会提交给能进行删除的处理程序,当我 从select 中选择锁定会员时,我们希望表单会 提交到锁定会员的处

理程序,解锁会员 也如此。我们极不愿意看到分别为这三个功能建立三个不同的页面,而其中仅仅 是处理程序不同。

利用客户端JavaScript的功能,我们简化可以把三项功能简化一个界面就可以完成,一个select,其中放置要进行的操作,一个Submit按钮(其

实一个普通的Button也可以实现,)

这是JavaScript中doPostBack函数的源代码,其中传递的参数为表单对象的引用和表单的action文件地址

function doPostBack(formObj,actionFile){
if(confirm("确定要执行的操作吗?")){
formObj.action=actionFile;
formObj.submit();
return true;
}
return false;
}
这样可以在一个表单中放上多个Button,甚至是连接,都可以实现同一个表单的提交给不同的处理程序。

在做表单处理时要注意:

1、表单应该包含name,aciton,method这三个必须的属性,enctype,id这两个属性可以根据需要加上,一般是建议加上,表单不要嵌套

2.document.form.action与document.form.submit()一定不要搞混,action是属性,submit是方法,方法不要忘记加上左右括号,这是一般新

手经常遇到的问题。

3.在一个完整表单中,不应有名字为action或submit的标签,否则将会产生"对象不支持此属性和方法"的ie错误。如代码"

name="action" >"在表单中是不允许出现的,而Action和Submit则是允许的(上面的程序代码就是用的是这样的写法),因为JavaScript是区分大

小写的。今天我就被这个大小写搞疯掉了,参考了n篇文章,终于找到原因所在,也留言自己的博客上做个备份!

 
 

你可能感兴趣的:(JavaScript)