2016-07-05 14 views
0

Jqueryでsubmit関数を使用してバリデーションを行います。バリデーションが真であればフォームを送信します。しかし、私は 'あなたは確かです'ダイアログを追加しました。ダイアログからtrueまたはfalseを返すことができます。このダイアログは、現在ループしているフォームを送信します。関数をサブミットするためにtrueまたはfalseを返すJQueryダイアログ

はJQuery:あなたは、ユーザーが既に確認されたりしていない場合を示しています/グローバルセッション変数を設定する必要があります

$(function(){ 
<!-- form validation --> 
$("#form1").submit(function() {  

    //validation stuff 

    //Disable the submit button 
    $('#SubmitButton').attr('disabled', false); 



    // Only if true is returned from dialog?? 
    return true; 
}) }); 

HTML

<div id="testdialog" title="Please Check"> 
<p>Are you sure></p>        
    <div style="height: 30px; width:100px;"onclick="$('#testdialog').dialog('close');return true;"> 
Continue 
    </div> 
    <div style="height: 30px; width: 100px;" onclick="$('#testdialog').dialog('close');return false';"> 
Redo selection 
    </div> 
</div> 
+0

ダイアログは非同期です。ダイアログは何も返すことができません。 – Barmar

+0

必要なアクションを実行するには、ダイアログボタンの 'onClick'コールバックを使う必要があります。 – Barmar

答えて

0

、このような何か:

var confirmed = false; 
var confirmSubmit = function() { 
    $('#testdialog').dialog('close'); 
    confirmed = true; 
    $("#form1").submit(); 
    return true; 
} 
$(function(){ 
    <!-- form validation --> 
    $("#form1").submit(function() {  

    //validation stuff 

    //Disable the submit button 
    $('#SubmitButton').attr('disabled', false); 

    if (!confirmed) { 
     // Trigger the notification 
    } 


    // Only if true is returned from dialog?? 
    return confirmed; 
}) }); 

とhtml:

<div id="testdialog" title="Please Check"> 
    <p>Are you sure></p>        
    <div style="height: 30px; width:100px;"onclick="confirmSubmit"> 
     Continue 
    </div> 
    <div style="height: 30px; width: 100px;" onclick="$('#testdialog').dialog('close');return false';"> 
     Redo selection 
    </div> 
</div> 
+0

アドバイスをいただきありがとうございました。私はonclick = "confirmSubmit"を動作させるのに問題があり、代わりにリスナーを使うことに決めました。 – user2452357

1

アドバイスをいただきありがとうございます。十分に近くで問題を並べ替えました。私はonclick = "confirmSubmit"を動作させるのに問題があり、代わりにリスナーを使うことに決めました。

$(function(){ 
    $('#btnconf').click(function() { 
    $('#testdialog').dialog('close'); 
    confirmed = true; 
    $("#form1").submit(); 
    return true; 
    }); 

htmlでは、id = "btnconf"をボタンに追加しました。

こんにちは!治療を!再度、感謝します!

関連する問題