মোছার আগে একটি নিশ্চিত বার্তাটি কীভাবে প্রদর্শিত করবেন?


204

আমি মুছে ফেলতে ক্লিক করে একটি নিশ্চিত বার্তা পেতে চাই (এটি সম্ভবত কোনও বোতাম বা কোনও চিত্র)। যদি ব্যবহারকারী ' Ok' নির্বাচন করেন তবে মুছে ফেলা হবে, অন্যথায় যদি ' Cancel' ক্লিক করা হয় তবে কিছুই ঘটে না।

বোতামটি ক্লিক করার সময় আমি এটি প্রতিধ্বনিত করার চেষ্টা করেছি, তবে স্টোর প্রতিধ্বনি করা আমার ইনপুট বাক্সগুলি এবং পাঠ্য বাক্সগুলিকে তাদের স্টাইল এবং নকশাকে হারিয়ে ফেলছে।

উত্তর:


330

onclickবোতামের ইভেন্টে এটি লিখুন :

var result = confirm("Want to delete?");
if (result) {
    //Logic to delete the item
}

উজ্জ্বল উত্তর! সংক্ষিপ্ত, সুনির্দিষ্ট এবং দক্ষতার সাথে কাজ করে
জন

জাভাস্ক্রিপ্টের কোনও অভিজ্ঞ ব্যক্তির কাছে আপনার কোড লাইনগুলির অর্থ কিছুই নেই, উদাহরণটি আপত্তিজনক এবং বিভ্রান্ত দেখাচ্ছে looks যাইহোক, এটি একটি ভাল উত্তর।
স্যামুয়েল রমজান 13

আমি মনে করি আপনার উত্তরে কিছু বিশদ যুক্ত করা উচিত। আপনি কেন মাথার অংশে বা বাইরের কোনও ফাইলে লেখার পরিবর্তে বোতামটির অভ্যন্তরে কোডটি প্রবেশ করান? এটি একটি খুব জেনেরিক ফাংশন এবং প্রোগ্রামার এটি বেশ কয়েকটি বোতামের জন্য কয়েকবার ব্যবহার করতে চাইতে পারে, আমি এটি একটি নির্দিষ্ট নির্দিষ্ট বোতামের অভ্যন্তরে লিখব না ...
franz1

285

আপনি নিম্নলিখিত হিসাবে আরও ভাল ব্যবহার করতে পারেন

 <a href="url_to_delete" onclick="return confirm('Are you sure you want to delete this item?');">Delete</a>

2
থ্রেডে এটি হওয়া উচিত। সহজ, দ্রুত, কার্যকর। কাজটি ঠিক নিখুঁতভাবে করে।
ডোনএক্সো

খুব বিপজ্জনক! জাভাস্ক্রিপ্ট বন্ধ হয়ে গেলে কি হবে? বা যদি কোনও মাকড়সা / অনুসন্ধানের বট এই পৃষ্ঠাটি পড়ত? এটি তখন সমস্ত লিঙ্কগুলি অনুসরণ করে সমস্ত কিছু মুছবে! কিছু ব্রাউজার প্লাগইন কোনও পৃষ্ঠার সমস্ত লিঙ্কগুলি এর প্রাক-ক্যাশে রাখতে অনুসরণ করে। এভাবে কখনও করবেন না! মুছে ফেলা কখনই কোনও জিইটি অনুরোধ হওয়া উচিত নয়।
ড্যানিয়েল টেস্টা

এটি # 1 আপ বোদ্ধ উত্তরের চেয়ে কম বিপজ্জনক নয়, জাভাস্ক্রিপ্ট বন্ধ করা থাকলে যে কোনও জাভাস্ক্রিপ্ট বিপজ্জনক। জাভাস্ক্রিপ্ট চালু বা বন্ধ করা কোনও ব্যবহারকারীর ব্যক্তিগত পছন্দ, জাভাস্ক্রিপ্ট বন্ধ করা থাকলে ব্যবহারকারীর কোনও ওয়েবসাইটের কোনও বোতাম না চাপানো ভাল। একটি দুর্দান্ত বিকল্প হিসাবে সর্বদা সার্ভার সাইড ভেরিফিকেশন রয়েছে।
স্যামুয়েল রমজান 13

53

আপনি আপত্তিজনক জাভাস্ক্রিপ্ট এবং নিশ্চিত বার্তাটি এইচটিএমএল হোল্ড করে রেখে এটি এটি করবেন।

<a href="/delete" class="delete" data-confirm="Are you sure to delete this item?">Delete</a>

এটি খাঁটি ভ্যানিলা জেএস, আইই 9+ এর সাথে সামঞ্জস্যপূর্ণ:

var deleteLinks = document.querySelectorAll('.delete');

for (var i = 0; i < deleteLinks.length; i++) {
  deleteLinks[i].addEventListener('click', function(event) {
      event.preventDefault();

      var choice = confirm(this.getAttribute('data-confirm'));

      if (choice) {
        window.location.href = this.getAttribute('href');
      }
  });
}

এটি কর্মে দেখুন: http://codepen.io/anon/pen/NqdKZq


এটি নিখুঁতভাবে কাজ করে তবে কেবল প্রথম বোতামটির জন্যই কাজ করে। আমাদের যদি তাদের 20 বা এর বেশি থাকে তবে কী হবে? ধন্যবাদ!
ইমোলেটিলি

1
আপনি ঠিক বলেছেন, এটি ক্যোয়ারী নির্বাচনকারীর কারণেই কেবল প্রথম উপাদানটি মিলে। আমি উত্তরটি সম্পাদনা করেছি এবং কোডেপেনটির পরিবর্তে ক্যোয়ারী নির্বাচনকারী সমস্ত ব্যবহার করতে অনুরোধ করেছি।
ডিভানটোইন

যদি জাভাস্ক্রিপ্ট অক্ষম করে কাজ করার জন্য এই উদাহরণটি সম্পাদনা করা হত তবে শীতল href="https://stackoverflow.com/delete"হবে eg অথবা একটি ফর্ম জমা উদাহরণ।
সিরো সান্তিলি 郝海东 冠状 病 六四 事件

1
@ সিরোস্যান্টিলি 巴拿馬 文件 六四 事件 法轮功 এটি ইতিমধ্যে ঘটনা.প্রিভেন্টডাফল্ট () ফাংশনটির জন্য ধন্যবাদ। আপনি একটি url দিয়ে হ্যাশ চরটি প্রতিস্থাপন করতে পারেন, এটি ট্রিগার হবে না। তবে, জাভাস্ক্রিপ্ট অক্ষম করা থাকলে লিঙ্কটি প্রত্যাশার মতো কাজ করবে।
ডিভানটোইন

1
@CiroSantilli 文件 文件 六四 事件 法轮功 আপনি এখানে যান;)
ডিভানটোইন

28
function ConfirmDelete()
{
  var x = confirm("Are you sure you want to delete?");
  if (x)
      return true;
  else
    return false;
}


<input type="button" onclick="ConfirmDelete()">

আমি মনে করি যে কেবল 1 টি রিটার্ন পয়েন্ট থাকা ভাল। তাই আমি পছন্দ করি
jedi

17
বা ঠিক return confirm("…")। বুলিয়ান এবং তারপরে / অন্যথায় শাখা করার জন্য একটি ভেরিয়েবল বরাদ্দ করার দরকার নেই।
slhck


13

এটি খুব সহজ এবং কোডের একটি লাইন

<a href="#" title="delete" class="delete" onclick="return confirm('Are you sure you want to delete this item')">Delete</a>

দেখে মনে হচ্ছে গ্রহণযোগ্য অ্যাওয়ারোরের ঠিক নীচে ইতিমধ্যে এর মতো উত্তর রয়েছে।
হাট

12

ব্যবহারকারী 1697128 এ উন্নতি করছে (কারণ আমি এখনও এটি সম্পর্কে মন্তব্য করতে পারি না)

<script>
    function ConfirmDelete()
    {
      var x = confirm("Are you sure you want to delete?");
      if (x)
          return true;
      else
        return false;
    }
</script>    

<button Onclick="return ConfirmDelete();" type="submit" name="actiondelete" value="1"><img src="images/action_delete.png" alt="Delete"></button>

বাতিল চাপ দেওয়া হলে ফর্ম জমা দেওয়া বাতিল করবে


8

আমি যেভাবে এটি করি তা প্রস্তাব করতে চাই:

<form action="/route" method="POST">
<input type="hidden" name="_method" value="DELETE"> 
<input type="hidden" name="_token" value="the_token">
<button type="submit" class="btn btn-link" onclick="if (!confirm('Are you sure?')) { return false }"><span>Delete</span></button>
</form>

6

এইচটিএমএল

<input onclick="return myConfirm();" type="submit" name="deleteYear" class="btn btn-danger" value="Delete">

জাভাস্ক্রিপ্ট

<script>
function myConfirm() {
  var result = confirm("Want to delete?");
  if (result==true) {
   return true;
  } else {
   return false;
  }
}


4

এইচটিএমএল:

<a href="#" class="delete" data-confirm="Are you sure to delete this item?">Delete</a>

JQuery ব্যবহার:

$('.delete').on("click", function (e) {
    e.preventDefault();

    var choice = confirm($(this).attr('data-confirm'));

    if (choice) {
        window.location.href = $(this).attr('href');
    }
});

DevAntoines উত্তর একটি ভাল jQuery এর ধারনের ( stackoverflow.com/a/19973570/1337887 )। তবে কিছুটা আরও সাধারণীকরণের পদ্ধতিটি হ'ল "। ('। [মুছে ফেলুন')" এর পরিবর্তে "$ ('এ [ডেটা-কনফার্ম]]' 'ব্যবহার করা হবে। এইভাবে, মুছার ক্লাস করার জন্য আপনার বোতামগুলির দরকার নেই, তবে কেবল ডেটা-কনফার্ম বৈশিষ্ট্যটি সংহত করুন।
ফ্লোরিয়ান


4
<a href="javascript:;" onClick="if(confirm('Are you sure you want to delete this product')){del_product(id);}else{ }" class="btn btn-xs btn-danger btn-delete" title="Del Product">Delete Product</a>

<!-- language: lang-js -->
<script>
function del_product(id){
    $('.process').css('display','block');
    $('.process').html('<img src="./images/loading.gif">');
    $.ajax({
        'url':'./process.php?action=del_product&id='+id,
        'type':"post",
        success: function(result){
            info=JSON.parse(result);
            if(result.status==1){
                setTimeout(function(){
                    $('.process').hide();
                    $('.tr_'+id).hide();
                },3000);
                setTimeout(function(){
                    $('.process').html(result.notice);
                },1000);
            } else if(result.status==0){
                setTimeout(function(){
                    $('.process').hide();
                },3000);
                setTimeout(function(){
                    $('.process').html(result.notice);
                },1000);
            }
        }
    });
}
</script>


3

যদি আপনি সিএসএস ফর্ম্যাটটি সম্পন্ন করে কিছু দ্রুত সুন্দর সমাধানে আগ্রহী হন তবে আপনি সুইটএলার্টটি ব্যবহার করতে পারেন

$(function(){
  $(".delete").click(function(){
      swal({   
	  	  title: "Are you sure?",   
		  text: "You will not be able to recover this imaginary file!",   
		  type: "warning",   
		  showCancelButton: true,   
	  	  confirmButtonColor: "#DD6B55",   
	  	  confirmButtonText: "Yes, delete it!",   
	  	  closeOnConfirm: false 
	  }, 
	  function(isConfirmed){ 
        if(isConfirmed) {
          $(".file").addClass("isDeleted");
          swal("Deleted!", "Your imaginary file has been deleted.", "success"); 
        }
      }
    );
  });
});
html { zoom: 0.7 } /* little "hack" to make example visible in stackoverflow snippet preview */
body > p { font-size: 32px }

.delete { cursor: pointer; color: #00A }
.isDeleted { text-decoration:line-through }
<script src="https://code.jquery.com/jquery-2.1.3.min.js"></script>
<script src="http://t4t5.github.io/sweetalert/dist/sweetalert-dev.js"></script>
<link rel="stylesheet" href="http://t4t5.github.io/sweetalert/dist/sweetalert.css">

<p class="file">File 1 <span class="delete">(delete)</span></p>


2

যখন আপনি পিএইচপি এবং মাইএসকিএল-তে কোনও কিছু মুছবেন তখন কনফর্মেশন বার্তা সেট করতে ...

এই স্ক্রিপ্ট কোডটি ব্যবহার করুন:

<script>
    function Conform_Delete()
    {
       return conform("Are You Sure Want to Delete?");
    }
</script>

এই এইচটিএমএল কোডটি ব্যবহার করুন:

<a onclick="return Conform_Delete()" href="#">delete</a>


1

JQuery ব্যবহার:

$(".delete-link").on("click", null, function(){
        return confirm("Are you sure?");
    });

1

আমি জানি এটি পুরানো, তবে আমার একটি উত্তর দরকার ছিল এবং এগুলির কোনও উত্তর নেই তবে আলপেশের উত্তরটি আমার পক্ষে কাজ করেছে এবং এমন সমস্যা থাকতে পারে এমন লোকদের সাথে ভাগ করে নিতে চেয়েছিলাম।

<script>    
function confirmDelete(url) {
    if (confirm("Are you sure you want to delete this?")) {
        window.open(url);
    } else {
        false;
    }       
}
</script>

সাধারণ সংস্করণ:

<input type="button" name="delete" value="Delete" onClick="confirmDelete('delete.php?id=123&title=Hello')">

আমার পিএইচপি সংস্করণ:

$deleteUrl = "delete.php?id=" .$id. "&title=" .$title;
echo "<input type=\"button\" name=\"delete\" value=\"Delete\" onClick=\"confirmDelete('" .$deleteUrl. "')\"/>";

এটি প্রকাশ্যে করার সঠিক উপায় নাও হতে পারে তবে এটি একটি ব্যক্তিগত সাইটে আমার পক্ষে কাজ করেছে। :)


1

এটা খুবই সাধারণ

function archiveRemove(any) {
    var click = $(any);
    var id = click.attr("id");
    swal.fire({
        title: 'Are you sure !',
           text: "?????",
           type: 'warning',
           showCancelButton: true,
           confirmButtonColor: '#3085d6',
           cancelButtonColor: '#d33',
           confirmButtonText: 'yes!',
           cancelButtonText: 'no'
    }).then(function (success) {
        if (success) {
            $('a[id="' + id + '"]').parents(".archiveItem").submit();
        }
    })
}

0
function del_confirm(msg,url)
        {
            if(confirm(msg))
            {
                window.location.href=url
            }
            else
            {
                false;
            }

        }



<a  onclick="del_confirm('Are you Sure want to delete this record?','<filename>.php?action=delete&id=<?<id> >')"href="#"></a>

0
<SCRIPT LANGUAGE="javascript">
function Del()
{
var r=confirm("Are you sure?")
if(r==true){return href;}else{return false;}
}
</SCRIPT>

এটির জন্য আপনার লিঙ্ক:

<a href='edit_post.php?id=$myrow[id]'> Delete</a>

0

ফাংশন কলের পরে অনক্লিক হ্যান্ডলারটি মিথ্যা ফিরতে হবে। যেমন যেমন

onclick="ConfirmDelete(); return false;">


0

আমি মনে করি সবচেয়ে সহজ আপত্তিজনক সমাধানটি হ'ল:

লিঙ্ক:

<a href="http://link_to_go_to_on_success" class="delete">Delete</a>

javascript:

$('.delete').click(function () {
    return confirm("Are you sure?");
});

0
<a href="javascript:;" onClick="if(confirm('Are you sure you want to delete this product')){del_product(id);}else{ }" class="btn btn-xs btn-danger btn-delete" title="Del Product">Delete Product</a>


function del_product(id){
    $('.process').css('display','block');
    $('.process').html('<img src="./images/loading.gif">');
    $.ajax({
        'url':'./process.php?action=del_product&id='+id,
        'type':"post",
        success: function(result){
            info=JSON.parse(result);
            if(result.status==1){
            setTimeout(function(){
                    $('.process').hide();
                    $('.tr_'+id).hide();
                },3000);
                setTimeout(function(){
                    $('.process').html(result.notice);
                },1000);
            }else if(result.status==0){
                setTimeout(function(){
                    $('.process').hide();
                },3000);
                setTimeout(function(){
                    $('.process').html(result.notice);
                },1000);

                }
            }
        });
}

0

খাঁটি জেএসের আরও সাধারণ উদাহরণ এখানে ClassName এবং এর সাথে বাধ্যতামূলক ইভেন্ট ব্যবহার করে।

var eraseable =  document.getElementsByClassName("eraseable");

for (var i = 0; i < eraseable.length; i++) {
    eraseable[i].addEventListener('click', delFunction, false); //bind delFunction on click to eraseables
}

function delFunction(){        
     var msg = confirm("Are you sure?");      
     if (msg == true) { 
        this.remove(); //remove the clicked element if confirmed
    }   
  };
<button class="eraseable">
<img class="eraseable" src="http://zelcs.com/wp-content/uploads/2013/02/stackoverflow-logo-dumpster.jpg" style="width:100px;height:auto;">
Delete me</button>

<button class="eraseable">
<img class="eraseable" src="http://zelcs.com/wp-content/uploads/2013/02/stackoverflow-logo-dumpster.jpg" style="width:100px;height:auto;">
Delete me</button>

<button class="eraseable">
<img class="eraseable" src="http://zelcs.com/wp-content/uploads/2013/02/stackoverflow-logo-dumpster.jpg" style="width:100px;height:auto;">
Delete me</button>


0
<script>
function deleteItem()
{
   var resp = confirm("Do you want to delete this item???");
   if (resp == true) {
      //do something
   } 
   else {
      //do something
   }
}
</script>

এই ফাংশনটি ব্যবহার করে কল করুন onClick


0

"মুছে ফেলার বিষয়ে নিশ্চিতকরণ বার্তা" ব্যবহারের জন্য:

                       $.ajax({
                        type: "POST",
                        contentType: "application/json; charset=utf-8",
                        url: "Searching.aspx/Delete_Student_Data",
                        data: "{'StudentID': '" + studentID + "'}",
                        dataType: "json",
                        success: function (data) {
                            alert("Delete StudentID Successfully");
                            return true;
                        }

0

জাভাস্ক্রিপ্ট মুছে ফেলা উদাহরণ সহ Angularjs

এইচটিএমএল কোড

<button ng-click="ConfirmDelete(single_play.play_id)" type="submit" name="actiondelete" value="1"><img src="images/remove.png" alt="Delete"></button>

"একক_প্লে.প্লে_আইডি" হ'ল কোনও অ্যাঙ্গুলারজ ভেরিয়েবল মনে করুন আপনি মোছার ক্রিয়া চলাকালীন কোনও প্যারামিটারটি পাস করতে চান

অ্যাপ্লিকেশন মডিউলের অভ্যন্তরে Angularjs কোড

$scope.ConfirmDelete = function(yy)
        {
            var x = confirm("Are you sure you want to delete?");
            if (x) {
             // Action for press ok
                $http({
                method : 'POST',
                url : 'sample.php',
                headers: {'Content-Type': 'application/x-www-form-urlencoded'},
                data: $.param({ delete_play_id : yy})
                }).then(function (response) { 
                $scope.message = response.data;
                });
            }
            else {
             //Action for cancel
                return false;
            }
        } 

0

নির্বাচনের বিকল্প বাক্সগুলির জন্য এটি করা অনেক কঠিন। সমাধান এখানে:

<select onchange="if (this.value == 'delete' && !confirm('THIS ACTION WILL DELETE IT!\n\nAre you sure?')){this.value=''}">
    <option value=''> &nbsp; </option>
    <option value="delete">Delete Everything</option>
</select>

0

আমি এইভাবে ব্যবহার করছি (লরাভেলে) -

<form id="delete-{{$category->id}}" action="{{route('category.destroy',$category->id)}}" style="display: none;" method="POST">
 @csrf
 @method('DELETE')
</form>

<a href="#" onclick="if (confirm('Are you sure want to delete this item?')) {
           event.preventDefault();
           document.getElementById('delete-{{$category->id}}').submit();
         }else{
           event.preventDefault();
         }">
  <i class="fa fa-trash"></i>
</a>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.