मैं वर्तमान में एक फॉर्म जमा करने के लिए jquery का उपयोग कर रहा हूं और उपयोगकर्ताओं को पुष्टि के लिए एक संवाद दिखा रहा हूं। यदि उपयोगकर्ता हां क्लिक करता है, तो फॉर्म जमा करना चाहिए। यदि उपयोगकर्ता नहीं क्लिक करता है, तो संवाद बंद करें।Jquery trap form submit()
यह सब ठीक काम करता है लेकिन एक मुद्दे के लिए: जब उपयोगकर्ता हाँ पर क्लिक करता है, तो यह फिर से उसी कोड को ट्रिगर करता है, और संवाद फिर से खोला जाता है।
$("#myform").submit(function (event) {
if (something) {
var $dialog = $('<div></div>').dialog({
buttons: {
"OK": function() {
$dialog.dialog('close');
$("#myform").submit();
return;
},
Cancel: function() {
$(this).dialog("close");
}
}
});
$dialog.dialog('open');
event.preventDefault();
return false;
} else {
$("#myform").submit();
}
});
मुझे समझ में क्यों यह हो रहा है, बस सबसे अच्छा तरीका यह चारों ओर पाने के लिए पर यकीन नहीं। मुझे एहसास है कि मैं फॉर्म सबमिट करने के बजाय बटन क्लिक पर मोडल दिखा सकता हूं, लेकिन फॉर्म सबमिट करने के लिए कीबोर्ड पर एंटर बटन मारने वाले उपयोगकर्ता की समस्या के आसपास यह समस्या नहीं आती है।
बहुत रोचक! मुझे नहीं लगता कि इसके चारों ओर एक स्पष्ट तरीका है, हालांकि मुझे उम्मीद है कि कोई मुझे गलत साबित कर सकता है! क्या आपने 'preventDefault()' कार्यक्षमता को एकीकृत करने का प्रयास किया है? –