হ্যাঁ বা jQuery ব্যবহার করে কোন কনফার্ম বক্স নেই


121

আমি ঠিক আছে / বাতিল বোতামের পরিবর্তে jQuery ব্যবহার করে হ্যাঁ / কোনও সতর্কতা চাই:

jQuery.alerts.okButton = 'Yes';
jQuery.alerts.cancelButton = 'No';                  
jConfirm('Are you sure??',  '', function(r) {
    if (r == true) {                    
        //Ok button pressed...
    }  
}

অন্য কোন বিকল্প?



কটাক্ষপাত আছে jQuery এর UI 'তে : jqueryui.com/demos/dialog/#modal-confirmation
jAndy


3
ale .alerts.okButton = 'হ্যাঁ'; ale .alerts.cancelButton = 'না'; jConfirm ('আপনি কি নিশ্চিত ??', '', ফাংশন (আর) {যদি (r == সত্য) {// ঠিক আছে বোতাম টিপুন ...}}
সুশান্ত সিএস

2
আরও একটি জিকিউরি ডায়ালগ সমাধান আরও নিশ্চিতকরণ () ফাংশনের মতো যা ফিরে আসে: স্ট্যাকওভারফ্লো.com/ a/ 18474005 / 1876355 আশা করি এটি সাহায্য করবে
পিয়ের

উত্তর:


129

ConfirmDialog('Are you sure');

function ConfirmDialog(message) {
  $('<div></div>').appendTo('body')
    .html('<div><h6>' + message + '?</h6></div>')
    .dialog({
      modal: true,
      title: 'Delete message',
      zIndex: 10000,
      autoOpen: true,
      width: 'auto',
      resizable: false,
      buttons: {
        Yes: function() {
          // $(obj).removeAttr('onclick');                                
          // $(obj).parents('.Parent').remove();

          $('body').append('<h1>Confirm Dialog Result: <i>Yes</i></h1>');

          $(this).dialog("close");
        },
        No: function() {
          $('body').append('<h1>Confirm Dialog Result: <i>No</i></h1>');

          $(this).dialog("close");
        }
      },
      close: function(event, ui) {
        $(this).remove();
      }
    });
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>


2
এই jquery-ui বা প্লেইন পুরানো jquery হয়? আমি jQuery এর ডকুমেন্টেইটনে কোথাও ডায়ালগ () দেখতে পাচ্ছি না।
chovy

11
আপনাকে আপনার পৃষ্ঠায় jquery এবং jquery ui স্ক্রিপ্ট অন্তর্ভুক্ত করতে হবে।
থুলসিরাম

@ তুলসীরাম কীভাবে আমি yii2কাঠামোয় প্লাগইন যুক্ত করতে পারি ?
ফয়সাল

113

সতর্কতা পদ্ধতি ব্যবহারকারীর এটি বন্ধ না করা পর্যন্ত মৃত্যুদন্ড কার্যকর করে:

কনফার্ম ফাংশনটি ব্যবহার করুন:

if (confirm('Some message')) {
    alert('Thanks for confirming');
} else {
    alert('Why did you press cancel? You should have confirmed');
}

3
confirm"ওকে বাতিল" যদিও এটি "হ্যাঁ না"।
KlaymenDK

57

আমি এই কোডগুলি ব্যবহার করেছি:

এইচটিএমএল:

<a id="delete-button">Delete</a>

JQuery:

<script>
$("#delete-button").click(function(){
    if(confirm("Are you sure you want to delete this?")){
        $("#delete-button").attr("href", "query.php?ACTION=delete&ID='1'");
    }
    else{
        return false;
    }
});
</script>

এই কোডগুলি আমার পক্ষে কাজ করে তবে আমি সঠিকভাবে এটি নিশ্চিত না যে এটি যথাযথ কিনা। আপনি কি মনে করেন?


3
এটি আমার পক্ষে কাজ করেif(confirm("Are you sure you want to return this meter?")){ return true; } else{ return false; }
ফয়সাল

আরো খাটো return confirm("Are you sure you want to return this meter?")))
Павел Зорин

28

এই jQuery প্লাগইনটি দেখুন: jquery.confirm

<a href="home" class="confirm">Go to home</a>

এবং তারপর:

$(".confirm").confirm();

এটি লিঙ্কটি অনুসরণ করে এগিয়ে যাওয়ার আগে একটি নিশ্চিতকরণ পপআপ প্রদর্শন করবে।

এখানে একটি ডেমো রয়েছে: http://myclabs.github.com/jquery.confirm/


12

আমি যে সমস্ত উদাহরণ দেখেছি সেগুলি বিভিন্ন "হ্যাঁ / না" টাইপ প্রশ্নের জন্য পুনরায় ব্যবহারযোগ্য নয়। আমি এমন কিছু সন্ধান করছিলাম যা আমাকে কলব্যাক নির্দিষ্ট করার অনুমতি দেয় যাতে আমি যে কোনও পরিস্থিতিতে ডাকতে পারি।

নিম্নলিখিতটি আমার পক্ষে ভাল কাজ করছে:

$.extend({ confirm: function (title, message, yesText, yesCallback) {
    $("<div></div>").dialog( {
        buttons: [{
            text: yesText,
            click: function() {
                yesCallback();
                $( this ).remove();
            }
        },
        {
            text: "Cancel",
            click: function() {
                $( this ).remove();
            }
        }
        ],
        close: function (event, ui) { $(this).remove(); },
        resizable: false,
        title: title,
        modal: true
    }).text(message).parent().addClass("alert");
}
});

আমি তখন এটিকে এভাবে ডাকি:

var deleteOk = function() {
    uploadFile.del(fileid, function() {alert("Deleted")})
};

$.confirm(
    "CONFIRM", //title
    "Delete " + filename + "?", //message
    "Delete", //button text
    deleteOk //"yes" callback
);

4

ডায়লগ বাক্স থেকে উত্তর ফিরে পেতে আমার সমস্যা হয়েছিল তবে শেষ পর্যন্ত এই অন্যান্য প্রশ্নের উত্তরটি সংযুক্ত করে একটি সমাধান নিয়ে এসেছিলেন - হ্যাঁ এবং-না-বোতাম-পরিবর্তে-ওকে-এবং-বাতিল-ইন-কনফার্ম- মডেল-নিশ্চিতকরণ ডায়ালগ থেকে কোড অংশ সহ বাক্স

অন্যান্য প্রশ্নের জন্য এটিই পরামর্শ দেওয়া হয়েছিল:

আপনার নিজের কনফার্ম বক্সটি তৈরি করুন:

<div id="confirmBox">
    <div class="message"></div>
    <span class="yes">Yes</span>
    <span class="no">No</span>
</div>

আপনার নিজস্ব confirm()পদ্ধতি তৈরি করুন :

function doConfirm(msg, yesFn, noFn)
{
    var confirmBox = $("#confirmBox");
    confirmBox.find(".message").text(msg);
    confirmBox.find(".yes,.no").unbind().click(function()
    {
        confirmBox.hide();
    });
    confirmBox.find(".yes").click(yesFn);
    confirmBox.find(".no").click(noFn);
    confirmBox.show();
}

আপনার কোড দ্বারা এটি কল করুন:

doConfirm("Are you sure?", function yes()
{
    form.submit();
}, function no()
{
    // do nothing
});

আমার পরিবর্তনগুলি আমি উপরের টুইটগুলি করেছি যাতে কল করার পরিবর্তে confirmBox.show() আমি confirmBox.dialog({...}) এই জাতীয় ব্যবহার করি

confirmBox.dialog
    ({
      autoOpen: true,
      modal: true,
      buttons:
        {
          'Yes': function () {
            $(this).dialog('close');
            $(this).find(".yes").click();
          },
          'No': function () {
            $(this).dialog('close');
            $(this).find(".no").click();
          }
        }
    });

আমি যে অন্য পরিবর্তন করেছি তা হ'ল ডু কনফার্ম ফাংশনের মধ্যে কনফার্মবক্স ডিভি তৈরি করা, যেমন থুলাসিরাম তার উত্তরে করেছিল।


0

আমাকে Ok এবং বাতিল বোতামগুলিতে একটি অনুবাদ প্রয়োগ করতে হবে। আমি কোডটি গতিশীল পাঠ্য বাদে পরিবর্তন করেছি (আমার অনুবাদ ফাংশনটি কল করে)


$.extend({
    confirm: function(message, title, okAction) {
        $("<div></div>").dialog({
            // Remove the closing 'X' from the dialog
            open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); },
            width: 500,
            buttons: [{
                text: localizationInstance.translate("Ok"),
                click: function () {
                    $(this).dialog("close");
                    okAction();
                }
            },
                {
                text: localizationInstance.translate("Cancel"),
                click: function() {
                    $(this).dialog("close");
                }
            }],
            close: function(event, ui) { $(this).remove(); },
            resizable: false,
            title: title,
            modal: true
        }).text(message);
    }
});


0

এটি ব্যবহার করে দেখুন ... এটি খুব সহজ কেবলমাত্র হ্যাঁ | কোনও সাথে সতর্কতার জন্য নিশ্চিত ডায়ালগ বাক্স ব্যবহার করুন।

যদি (নিশ্চিত করুন ("আপনি কি আপগ্রেড করতে চান?")) {আপনার কোড}


-3

আপনি আপনার নিশ্চিতকরণ পুনরায় ব্যবহার করতে পারেন:

    function doConfirm(body, $_nombrefuncion)
    {   var param = undefined;
        var $confirm = $("<div id='confirm' class='hide'></div>").dialog({
            autoOpen: false,
            buttons: {
                Yes: function() {
                param = true;
                $_nombrefuncion(param);
                $(this).dialog('close');
            },
                No: function() {
                param = false;
                $_nombrefuncion(param);
                $(this).dialog('close');
            }
                                    }
        });
        $confirm.html("<h3>"+body+"<h3>");
        $confirm.dialog('open');                                     
    };

// for this form just u must change or create a new function for to reuse the confirm
    function resultadoconfirmresetVTyBFD(param){
        $fecha = $("#asigfecha").val();
        if(param ==true){
              // DO THE CONFIRM
        }
    }

//Now just u must call the function doConfirm
    doConfirm('body message',resultadoconfirmresetVTyBFD);

2
দয়া করে সঠিক ইংরেজিটি ব্যবহার করুন এবং "ইউ" এর মতো সংক্ষিপ্ত বিবরণগুলি এড়িয়ে চলুন। এছাড়াও, ওপি চিত্রিত করার জন্য এবং শিক্ষিত করার জন্য যদি আপনি আপনার কোডটি কিছুটা ব্যাখ্যা করতে পারেন, এবং আপনি কেন উত্তর উত্তর পূর্ববর্তী পোস্টের যে কোনওটির চেয়ে ভাল বলে মনে করেন better
ডেভিডমহ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.