jQuery Mobile,表单提交页面更改

时间:2016-03-18 20:20:53

标签: javascript jquery forms validation jquery-mobile

我正在使用jQuery mobile并希望验证表单。 我已经为表格提供了paymentDetailForm课程。

<form method="post" action="demo.java" class="paymentDetailForm">

表单中的提交按钮的ID为paymentConfirm 然后在javascript中,我使用了这段代码:

$("#paymentConfrim").click(function() {
 $( ".paymentDetailForm" ).submit(function( event ) {
   if(!validatePaymentDetailForm()){ // if false comes from validation
     return false;
   }
   else{
     $(':mobile-pagecontainer').pagecontainer("change", "#successPage", {});
     return true;
    }
 });

});

此处validatePaymentDetailForm是我用来验证表单字段的自定义验证函数。如果表单没有验证,则返回false,否则返回true。

在成功提交表单后,我尝试将用户重定向到成功消息页面。子页面的ID为successPage,但上面显示的代码不起作用。

$(':mobile-pagecontainer').pagecontainer("change", "#successPage", {});

控制台显示此错误,同时执行此行: Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: mobile-pagecontainer

知道我做错了什么吗?

1 个答案:

答案 0 :(得分:0)

我使用的是旧版本的jQuery Mobile ver 1.2。显然jQuery pagecontainer小部件是在jQuery Mobile ver 1.4中引入的。 我无法更改jQuery移动版本,因此我使用了changePage()函数。

这是我用于使页面转换工作的代码:

$("#paymentConfrim").click(function() {
  $( ".paymentDetailForm" ).submit(function( event ) {
  if(!validatePaymentDetailForm()){ // if false comes from validation
     return false;
  }
  else{
      $.mobile.changePage( "#submissionConfirmation", {} );
     return true;
   }
});