使用jQeury控制form动态发送请求

1.jquery中使用submit提交按钮时,当return false后,依然会提交表单的

解决的办法是:使用button按钮,而不是submit按钮 看下面的例子

  <form id="form" action="back.action" method="get">      

         <input type="text" id="backSelect" value=${sessionScope.teachername}/>
                <input type="submit" id="backSelect" value="退选"/>
     </form> 

我要判断是否确定退选才发送请求到back.action中处理。 

Jquery如下:

 jQuery('#backSelect').click(function(){
        var date=new Date();
        var a = new Date("06/21/2015 12:00");
        var b = new Date("06/23/2015 12:00");
        if(date>=a&&date<=b){
        jConfirm('您确定要退选吗?','确认框',function(r){
        var message = r == true ? '是' : '不是';
        if(r==true){
        jQuery('#form').submit(); // 这个控制发送提交请求
        }else{
        jAlert('请您填写拟题表');
        }
        });
        }else{
        jAlert("时间已过,您不能退选了");
        }

        });  

------------------------------以上是不能够解决问题的,当你点击的时候,都会发送submit请求,这大概就是submit和button的区别吧--------------------

2.可以通过下面这篇文章来学习下jquery如何提交表单

(2) 编写以下代码,这段代码将创建一个表单,其中包含一个input按钮(而不是submit按钮)。添加一些将在单击该按钮时触发并提交该表单的jQuery代码。

 

 <form id="form" action="back.action" method="get">      

         <input type="text" id="backSelect" value=${sessionScope.teachername}/>                 <input type="submit" id="backSelect" value="退选"/>      </form> 

--------------------------jquery----------------------------

 jQuery('#backSelect').click(function(){          var date=new Date();          var a = new Date("06/21/2015 12:00");          var b = new Date("06/23/2015 12:00");          if(date>=a&&date<=b){          jConfirm('您确定要退选吗?','确认框',function(r){          var message = r == true ? '是' : '不是';          if(r==true){          jQuery('#form').submit(); // 这个控制发送提交请求          }else{          jAlert('请您填写拟题表');          }          });          }else{          jAlert("时间已过,您不能退选了");          }
        });  

//只需要将form里面的type改成button就可以轻松解决问题,控制当你判断确定是才发送请求,这样可以做到动态发送请求-


1.5.3 原理

在本例中,向input按钮附加click事件处理函数。该事件处理函数将在单击按钮时执行。单击按钮时,将在表单上调用jQuery的submit()方法,这将提交该表单。所有浏览器都有一个原生的提交方法,用于以编程方式提交表单。jQuery将此功能包装到了它自己的submit()方法中。

1.5.4 更多信息

控制表单提交

如果表单有一个submit按钮,那么我们可以控制是否提交该表单。在本例中,必须向表单附加事件处理函数,此事件处理函数将在单击特定表单上的submit按钮时执行。

 

$('#Form').submit(function()
{
 return false;
});

 

上述代码将在单击ID为Form的表单上的submit按钮时执行。如果处理函数返回false,不会提交表单。这对验证表单非常方便。验证表单值的代码可以放在处理函数中。如果表单值通过验证,返回true,提交表单。验证失败时,返回false,则不允许提交表单。

另一个选项是使用preventDefault()。由名称可以看出,preventDefault()会阻止执行默认事件。它是event对象的一个属

$('#Form').submit(function(event)

{

event.preventDefault()

});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值