जावास्क्रिप्ट की पुष्टि करें पॉपअप हाँ, ठीक और रद्द करने के बजाय कोई बटन नहीं


113

जावास्क्रिप्ट पॉपअप की पुष्टि करें, मैं ओके और कैंसल के बजाय हां, नो बटन दिखाना चाहता हूं।

मैंने इस vbscript कोड का उपयोग किया है:

<script language="javascript">
    function window.confirm(str) {
        execScript('n = msgbox("' + str + '","4132")', "vbscript");
        return (n == 6);
    }
</script>

यह केवल IE में काम करता है, एफएफ और क्रोम में, यह काम नहीं करता है।

क्या जावास्क्रिप्ट में इसे प्राप्त करने के लिए कोई कार्यक्षेत्र है?

मैं पॉप का शीर्षक भी बदलना चाहता हूं जैसे IE 'विंडोज इंटरनेट एक्सप्लोरर' में दिखाया गया है, मैं यहां अपना खुद का एप्लिकेशन नाम दिखाना चाहता हूं।


मैंने स्वयं हां को कोई संवाद नहीं बनाया, जो वास्तव में अनुकूलित करने के लिए आसान है: github.com/stein189/YesNoDialog यदि आप चाहते हैं तो आप इसे आज़मा सकते हैं
सजनियाँ

जवाबों:


88

दुर्भाग्य से, एक पुष्टिकरण संवाद खोलने के लिए कोई क्रॉस-ब्राउज़र समर्थन नहीं है जो डिफ़ॉल्ट ओके / रद्द जोड़ी नहीं है। आपके द्वारा प्रदान किया गया समाधान VBScript का उपयोग करता है, जो केवल IE में उपलब्ध है।

मैं एक जावास्क्रिप्ट पुस्तकालय का उपयोग करने का सुझाव दूंगा जो इसके बजाय एक डोम-आधारित संवाद का निर्माण कर सकता है। Jquery UI आज़माएं: http://jqueryui.com/


17

क्रॉस-ब्राउज़र तरीके से इसे पूरा करने का एकमात्र तरीका jQuery UI जैसी रूपरेखा का उपयोग करना और एक कस्टम डायलॉग बनाना है:

jquery संवाद

यह बिल्ट-इन कन्फर्म पॉपअप की तरह ही काम नहीं करता है, लेकिन आपको यह करने में सक्षम होना चाहिए कि आप क्या चाहते हैं।


4
स्पष्टता के लिए, यह एकमात्र तरीका नहीं है - आप अपने स्वयं के जावास्क्रिप्ट को बेशक लिख सकते हैं, न कि यह सही काम करना होगा।
लियोनार्डकैलिस

1
@ लियोनार्डकॉलिस लेकिन एक बड़ी लाइब्रेरी के लिए जिसमें सिर्फ एक मॉडल div कार्यक्षमता है बेहतर है? मुझे ऐसा नहीं लगता
nicholaswmin

8

आप http://projectshadowlight.org/jquery-easy-confirm-dialog/ का भी उपयोग कर सकते हैं । यह बहुत ही सरल और उपयोग में आसान है। बस jquery आम पुस्तकालय और केवल एक फ़ाइल शामिल करें:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/themes/blitzer/jquery-ui.css" type="text/css" />
<script src="jquery.easy-confirm-dialog.js"></script>

4

आप इस क्रॉस-ब्राउज़र को पुष्टि () फ़ंक्शन या समान के साथ नहीं कर सकते। मैं आपको सुझाव देता हूं कि आप HTML डायलॉग बॉक्स बनाने के लिए jQuery UI संवाद सुविधा जैसी किसी चीज़ का उपयोग करें ।



3

चित्रित (लेकिन छोटी और सरल) लाइब्रेरी जो आप उपयोग कर सकते हैं वह है JSDialog: js.plus/products/jsdialog

यहां हां और नहीं बटन के साथ एक संवाद बनाने के लिए एक नमूना है:

JSDialog.showConfirmDialog(
    "Save document before it will be closed?\nIf you press `No` all unsaved changes will be lost.",
    function(result) {
        // check result here
    },
    "warning",
    "yes|no|cancel"
);

जेएस डायलॉग डेमो स्क्रीनशॉट


1
अरे, आप इसे कहां से लोड करते हैं?
गैरी

@ गैरी लिंक दशकों से नीले, रेखांकित पाठ के लिए डिफ़ॉल्ट हैं। इस उत्तर की पहली पंक्ति में नीले पाठ पर होवर करने के लिए अपने माउस का प्रयोग करें और बाएँ बटन पर क्लिक करें।
कार्ट में

प्रीमियम प्लगइन्स एक प्रोग्रामर की मदद नहीं करते हैं
क्रिस गुलाबी

1

आप मिठाई का उपयोग कर सकते हैं।

अपने HTML में आयात करें:

<script src="https://cdn.jsdelivr.net/npm/sweetalert2@8"></script>

और अलर्ट फायर करने के लिए:

Swal.fire({
  title: 'Do you want to do this?',
  text: "You won't be able to revert this!",
  type: 'warning',
  showCancelButton: true,
  confirmButtonColor: '#3085d6',
  cancelButtonColor: '#d33',
  confirmButtonText: 'Yes, Do this!',
  cancelButtonText: 'No'
}).then((result) => {
  if (result.value) {
    Swal.fire(
      'Done!',
      'This has been done.',
      'success'
    )
  }
})

अधिक डेटा के लिए मधुर अलर्ट वेबसाइट पर जाएं


0

1) आप अपनी साइट पर फ़ाइलों के नीचे डाउनलोड और अपलोड कर सकते हैं

<link href="/Style%20Library/css/smoothness/jquery.alerts.css" type="text/css" rel="stylesheet"/> 

2) उसके बाद आप सीधे नीचे दिए गए कोड का उपयोग कर सकते हैं

$ .alerts.okButton = "हाँ"; $ .alerts.cancelButton = "नहीं";

दस्तावेज़ में। पहले से ही कार्य।

कृपया प्रयास करें यह काम करेगा।

धन्यवाद


-11

इस बिंदु पर बहुत ही विशिष्ट उत्तर की पुष्टि संवाद जेएस समारोह है:

confirm('Do you really want to do so');

यह ओके कैंसल बटन के साथ डायलॉग बॉक्स दिखाता है, इन बटन को हां नहीं के साथ बदलने के लिए इतना आसान काम नहीं है, इसके लिए आपको jQuery फ़ंक्शन लिखना होगा।


1
वह एक हां और नहीं चाहता था। यह पुष्टि केवल एक ठीक है या रद्द करती है। यही कारण है कि यह नीचे वोट दिया जा रहा है।
SpoiledTechie.com
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.