同一个表单可以根据用户的选择,提交给不同的后台处理程序

60 篇文章 0 订阅






今天在写程序的过程,遇到了同一表单提交不同的后台处理的程序的问题,在网上找了一下,都是用js解决的,我分别用了下面的两方法,分别试了一上,前两个都可以,第三种没有试。

一、方法一(可以实现)
document.form.action,表单分向提交,javascript提交表单
同一个表单可以根据用户的选择,提交给不同的后台处理程序。即,表单的分向提交。如,在编写论坛程序时,如果我们希望实现用户在发送贴子的时候,既发送提交功能又有预览功能时,就会遇到上述问题。即,当用户点击提交按钮时,我们希望表单提交给"提交"处理程序;而当用户点击预览按钮时,我们希望表单提交给"预览"处理程序。那么,如何实现上述功能呢?下面代码可以很好的解决这个问题。  
<form name="form" method="post">
测试表单:<input name="test"><br>
<input type="button" value="提交" onClick=send()>
<input type="button" value="预览" onClick=preview()>
</form>
<script language=javascript>
function send()
  {
    document.form.action="send.asp"
    document.form.submit()
   }
function preview()
   {
     document.form.action="preview.asp"
     document.form.submit()
   }
</script>

         关于上面实例的两点说明: 
        1、在整个表单中,不应有名字为action或submit的标签,否则将会产生"对象不支持此属性和方法"的错误。如代码 "<input type='xxxx' name='action' >"在表单中是不允许出现的; 
        2、在form标签中应该存在name属性。即,应该给表单取一个名字。语句document.form.action和document.form.submit中的"form"也就是表单的名字。
        表单的分向提交不仅仅使用在论坛的程序中,它还可以运用在许多场合下。恰当的运用表单的分向提交功能可以大大的增强网站的人性化程度。 

        昨天,我调试程序就出现了这样的问题,就是出现了"对象不支持此属性和方法"的错误,一直无法定位出来,都快疯掉了,后来在发现一个button命名为submit了。

方法二.--------   (可以实现)
    
  <form   name="formname"   action="">   
  <input   name="inputname">   
  <input   type="submit"   οnclick="document.formname.action='a.asp'"   value="button   a">   
  <input   type="submit"   οnclick="document.formname.action='b.asp'"   value="button   b">   
  <input   type="submit"   οnclick="document.formname.action='c.asp'"   value="button   c">   
  </form>       
方法三.----------   (没试)
  <input   type=button   name="a"   value="a"   οnclick="this.form.action='a.asp';this.form.submit();">   
  <input   type=button   name="b"   value="b"   οnclick="this.form.action='b.asp';this.form.submit();">   
  <input   type=button   name="c"   value="c"   οnclick="this.form.action='c.asp';this.form.submit();">   
  <input   type=button   name="d"   value="d"   οnclick="this.form.action='d.asp';this.form.submit();">
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值