2010-07-23 64 views
2

什麼我希望做的是彈出一個「你確定」確認框,如果一個下拉列表的新選的值有一定的價值之前,我提交表單。ASP.NET和JQuery - 彈出下拉列表供選擇價值

<select name="ListSearchType" id="ListSearchType"> 
    <option value="C">Closed</option> 
    <option value="O">Open</option> 
    <option value="P">Pending</option> 
</select> 

所以,如果我有一個像上面啓用自動回發的下拉列表,我會想,如果在提交表單之前用戶選擇「關閉」,彈出確認對話框。

回答

2
$("#ListSearchType").onchange(function() { 
    if ($(this).val() == "C") { 
     var confirmed = confirm("Are you sure ?"); 
     if (!confirmed) { 
      return false; 
     } 
    } 
}); 
2

我想到的一種方法是,不要設置autopostback選項= true,您可以使用jquery管理客戶端事件change

change處理程序,你會檢查選擇的選項並執行相應的值/用戶確認的手動回發。

2

在表單提交解決方案:

$(document).ready(function() { 
    $("#yourFormID").submit(function() { 
    if ($("#ListSearchType").val() == "C")) { 
     if (!confirm("ARe you sure?")) { 
     return false; 
     } 
    } 
    return true; 
    }); 
}); 

ON的場解

$(document).ready(function() { 
     $("#ListSearchType").change(function() { 
     if ($(this).val() == "C")) { 
      if (!confirm("ARe you sure?")) { 
      //Do something..disable submit, revert to original value. 
      } 
     } 
     }); 
    });