2016-03-18 24 views
1

私はjQueryモバイルを使用しており、フォームを検証したいと考えています。 私はpaymentDetailFormのクラスをフォームに与えました。jQuery Mobile、フォーム提出時のページ変更

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

形で送信ボタンをJavaScriptで、次いでpaymentConfirm のIDを持っている、私はこのコードを使用しています:

$("#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

私が間違っているの何任意のアイデアを?

答えて

0

古いバージョンのjQuery Mobileバージョン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; 
    } 
}); 
関連する問題