我有一个按钮,当点击它时,我必须生成一个带有“确定”“取消”按钮的警告框。我这样做了,.aspx上的脚本是,
<script>
function getConfirmationValue2()
{var confirm_value = document.createElement("INPUT");
confirm_value.type = "hidden";
confirm_value.name = "confirm_value2";
if (confirm("Save??")) {
confirm_value.value = "OK";
} else {
confirm_value.value = "CANCEL";
}
document.forms[0].appendChild(confirm_value);
} </script>
<asp:ImageButton ID="btn_submit" runat="server" ImageUrl="~/images/BtnSubmit.png" CausesValidation="true"
onclick="btn_submit_click"/>
点击按钮,
protected void btn_submit_click(object sender, ImageClickEventArgs e)
{
if(TextBox1.Text="start")
{
btn_submit.OnClientClick = @"return getConfirmationValue2();";
string confirmValue122 = Request.Form["confirm_value2"];
if (confirmValue122 == "OK")
{
//updating the datas
}
}}}
仅在按钮上单击两次时才会生成警告框。会出现什么问题?
答案 0 :(得分:0)
您需要在OnClientClick = "return getConfirmationValue2();"
按钮标记
<asp:ImageButton ID="btn_submit"
runat="server"
ImageUrl="~/images/BtnSubmit.png"
CausesValidation="true"
OnClientClick = "return getConfirmationValue2();" <== Added code here
onclick="btn_submit_click"/>
仅在按钮上单击两次时才会生成警告框。会出现什么问题?
当您第一次点击时, OnClientClick
被绑定,因此您没有收到第一次点击的提示框。
如果您想在CodeBehind中register
,我建议您使用Control.Init
事件或Page_Load
事件