[英]How to fire Onclick and Onclientclick with Bootstrap Modal?
[英]fire OnClick depends on the result of OnClientClick
我有一些遺留代碼,一些在 JavaScript 中實現,一些在 C# 中實現。 現在我必須編寫一段代碼來決定是否觸發 OnClick 取決於一些條件。 我想通過檢查 OnClientClick 中的條件來實現它。 我嘗試了一些來自互聯網的方法,但它們沒有奏效。 (我是 JavaScript 和 C# 的新手,所以我不是很了解解決方案,例如設置 OnClientClick="return confirm ('這將刪除報告。繼續?'); return false; ",不它總是在執行“return false”之前返回?”)
我的代碼如下
aspx file:
<div id="searchBtn"><asp:LinkButton ID="SearchButton" OnClientClick="return SetInputString(); return false;" OnClick="SearchClick" ValidationGroup="search" runat="server"><img src="images/btn_search.jpg" alt="検索" /></asp:LinkButton></div>
js file:
function SetInputString() {
var textbox = document.getElementById("textForm");
var inputString = document.getElementById("inputString");
clearNonInteractiveTimer();
inputString.value = textbox.value;
if (/^[0-9]{6}$/.test(inputString.value)) {
EvaluateEnteredSearch(inputString.value);
return false;
} else {
return true;
}
}
cs file:
public void SearchClick(object sender, EventArgs e){
...
}
Confirm
是 Javascript 中“內置”的方法。
此方法是模態的:它停止執行腳本並阻止用戶與頁面的 rest 交互,直到 window 關閉。
所以不,output 將取決於用戶的選擇。
return false
表示您正在取消按下按鈕的默認操作。
有兩種方法可以告訴瀏覽器您要取消某些事件的默認操作,在這種情況下,取消以下鏈接:調用event.preventDefault ()
或從處理程序 function return false
。 僅當您使用onevent
屬性分配處理程序時,第二個才有效,如下所示:
<a href="//google.com" onclick="return false"> google </a>
或者像這樣:
<a href="//google.com"> google </a>
<script>
document.getElementsByTagName ('a') [0] .onclick = function () {
return false;
}
</script>
現在,你的代碼呢。
OnClick
事件向服務器發送請求並執行操作作為響應。
OnClientClick
與我們在 Javascript 中編寫的 onclick function 非常相似......也就是說,它在客戶端執行語句而不將它們發送到服務器。
SetInputString
將首先被調用,如果為true
- SearchClick
將被調用
另外,這里有更多信息: 何時調用服務器 onClick 與 OnClientClick
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.