2016-07-05 1 views
0

Jquery에서 submit 함수를 사용하여 유효성 검사를 수행하고 유효성 검사가 true이면 양식을 제출합니다. 그러나 '확실합니까?'대화 상자가 추가되었습니다. 대화 상자에서 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"를 추가했습니다.

안녕하세요. 대접!! 다시 한 번 감사드립니다!

관련 문제