从后面的代码触发 JavaScript Confirm()
Trigger JavaScript Confirm() from code behind
我正在开发一个 Asp.Net 应用程序,目前我正在尝试从后面的代码触发一个 JavaScript Confirm()
弹出窗口。我想在不单击任何 button_click
事件的情况下弹出。
IF not blnResult then
popup message with OK& CANCEL
IF OK THEN Exit Sub
ELSE
no display
END IF
我尝试执行以下操作,但未触发弹出窗口,请协助。
1) 在 ASPX 中创建了一个按钮
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="Confirm()"/>
JavaScript 函数
<script language="javascript" type = "text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
if (confirm("Do you want to delete all records?")) {
confirm_value1.value = "Yes";
} else {
confirm_value1.value = "No";
}
document.forms[0].appendChild(confirm_value1);
}
</script>
后面的代码,
Public function GetConfirmation()
btnConfirm_Click(btnConfirm, EventArgs.Empty)
End Sub
上一行没有为我触发弹出窗口。
只需修改您的 javascript 函数即可。
<script language="javascript" type = "text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
if (confirm("Do you want to delete all records?")) {
confirm_value1.value = "Yes";
} else {
confirm_value1.value = "No";
}
document.forms[0].appendChild(confirm_value1);
return false;//this will prevent submit click.
} </script>
只需在函数的最后一行添加 return 语句。
return false;
希望此解决方案对您有所帮助。
如果我理解正确,那么您可能只想在用户通过单击“是”进行确认时调用单击事件背后的代码。有很多方法可以做到这一点。我列出了其中的一些。选择最适合您的。
不知道你为什么创建了一个隐藏的输入字段。创建它的目的是什么。如果您不需要隐藏的输入字段,您可以试试这些。
- Confirmation in HTML Tag
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="return confirm('Do you want to delete all records?');"/>
- Confirmation in JavaScript
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="Confirm();"/>
<script language="javascript" type="text/javascript">
function Confirm() {
return confirm("Do you want to delete all records?");
}
</script>
或
<script language="javascript" type="text/javascript">
function Confirm() {
var result = confirm("Do you want to delete all records?");
return result;
}
</script>
如果您确实需要保留隐藏的输入字段,请使用下面的方法。
<script language="javascript" type="text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
var result = confirm("Do you want to delete all records?");
confirm_value1.value = result ? "Yes" : "No";
document.forms[0].appendChild(confirm_value1);
return result;
}
</script>
我正在开发一个 Asp.Net 应用程序,目前我正在尝试从后面的代码触发一个 JavaScript Confirm()
弹出窗口。我想在不单击任何 button_click
事件的情况下弹出。
IF not blnResult then
popup message with OK& CANCEL
IF OK THEN Exit Sub
ELSE
no display
END IF
我尝试执行以下操作,但未触发弹出窗口,请协助。
1) 在 ASPX 中创建了一个按钮
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="Confirm()"/>
JavaScript 函数
<script language="javascript" type = "text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
if (confirm("Do you want to delete all records?")) {
confirm_value1.value = "Yes";
} else {
confirm_value1.value = "No";
}
document.forms[0].appendChild(confirm_value1);
}
</script>
后面的代码,
Public function GetConfirmation()
btnConfirm_Click(btnConfirm, EventArgs.Empty)
End Sub
上一行没有为我触发弹出窗口。
只需修改您的 javascript 函数即可。
<script language="javascript" type = "text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
if (confirm("Do you want to delete all records?")) {
confirm_value1.value = "Yes";
} else {
confirm_value1.value = "No";
}
document.forms[0].appendChild(confirm_value1);
return false;//this will prevent submit click.
} </script>
只需在函数的最后一行添加 return 语句。
return false;
希望此解决方案对您有所帮助。
如果我理解正确,那么您可能只想在用户通过单击“是”进行确认时调用单击事件背后的代码。有很多方法可以做到这一点。我列出了其中的一些。选择最适合您的。
不知道你为什么创建了一个隐藏的输入字段。创建它的目的是什么。如果您不需要隐藏的输入字段,您可以试试这些。
- Confirmation in HTML Tag
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="return confirm('Do you want to delete all records?');"/>
- Confirmation in JavaScript
<asp:Button ID="btnConfirm" runat="server" Text="Delete-All" OnClick="btnConfirm_Click" OnClientClick="Confirm();"/>
<script language="javascript" type="text/javascript">
function Confirm() {
return confirm("Do you want to delete all records?");
}
</script>
或
<script language="javascript" type="text/javascript">
function Confirm() {
var result = confirm("Do you want to delete all records?");
return result;
}
</script>
如果您确实需要保留隐藏的输入字段,请使用下面的方法。
<script language="javascript" type="text/javascript">
function Confirm() {
var confirm_value1 = document.createElement("INPUT");
confirm_value1.type = "hidden";
confirm_value1.name = "confirm_value";
var result = confirm("Do you want to delete all records?");
confirm_value1.value = result ? "Yes" : "No";
document.forms[0].appendChild(confirm_value1);
return result;
}
</script>