मैं हाइपरलिंक के क्लिक इवेंट पर सशर्त रूप से एक JQuery संवाद दिखाना चाहता हूं।
मुझे शर्त की आवश्यकता है जैसे कंडीशन 1 पर एक JQuery डायलॉग खोलें और अगर कंडीशन 1 संतुष्ट नहीं है, तो पृष्ठ पर नेविगेट करें, क्योंकि 'href' टैग से संदर्भित है जिसकी क्लिक ईवेंट प्रश्न में है।
मैं लिंक के क्लिक इवेंट पर एक फ़ंक्शन को कॉल करने में सक्षम हूं। यह फ़ंक्शन अब किसी अन्य URL को निष्पादित करके उक्त स्थिति की जांच करता है (जो मेरे स्प्रिंग नियंत्रक को निष्पादित करता है और प्रतिक्रिया देता है)।
सभी कार्य केवल विंडो के साथ सही काम करते हैं। पॉपअप ब्लॉकर द्वारा अवरुद्ध किया जा रहा है।
$('a[href*=/viewpage?number]').live('click', function(e) {
e.preventDefault();
redirectionURL = this.href;
pageId= getUrlVars(redirectionURL)["number"];
$.getJSON("redirect/" + pageId, {}, function(status) {
if (status == null) {
alert("Error in verifying the status.");
} else if(!status) {
$("#agreement").dialog("open");
} else {
window.open(redirectionURL);
}
});
});
यदि मैं e.preventDefault();
कोड से हटाता हूं , तो पॉपअप ब्लॉकर पृष्ठ को ब्लॉक नहीं करता है, हालांकि कंडीशन 1 के लिए यह फिर संवाद खोलता है और साथ ही 'href' पेज को खोलता है।
अगर मैं एक को हल करता हूं, तो यह दूसरे के लिए मुद्दा बनाता है। मैं एक साथ दोनों स्थितियों को न्याय नहीं दे पा रहा हूं।
कृपया आप मुझे इस मुद्दे को हल करने में मदद कर सकते हैं?
एक बार यह हल हो जाने के बाद मेरे पास एक और मुद्दा है हल करने के लिए यानी नेविगेशन ऑन डायलॉग ओके इवेंट :)