JavaScript 确认取消按钮仍在发布
JavaScript confirm cancel button still posting
确认对话框中的取消按钮仍然导致 post 返回并调用服务器端按钮事件。
<asp:Button ID="btnSubmit" runat="server" CssClass="CommandButton" Width="110px" OnClientClick="confirmPayment();" UseSubmitBehavior="false"
Text="Submit Payment" OnClick="btnSubmit_Click"></asp:Button>
function confirmPayment() {
var isOkay = confirm("Confirm Payment?");
if (isOkay) {
return true;
} else {
return false;
}
}
我尝试调试我的代码,我可以看到它返回 false,然后返回 post。不确定我的代码是否有问题?
您需要在点击处理程序中接受 event
对象,并使用 preventDefault
:
function confirmPayment(event) {
event.preventDefault()
...
...
}
你需要在OnClientClick
中写return confirmPayment
试试这个:
<asp:Button ID="btnSubmit" runat="server" CssClass="CommandButton" Width="110px" OnClientClick="return confirmPayment();" UseSubmitBehavior="false" Text="Submit Payment" OnClick="btnSubmit_Click"></asp:Button>
确认对话框中的取消按钮仍然导致 post 返回并调用服务器端按钮事件。
<asp:Button ID="btnSubmit" runat="server" CssClass="CommandButton" Width="110px" OnClientClick="confirmPayment();" UseSubmitBehavior="false"
Text="Submit Payment" OnClick="btnSubmit_Click"></asp:Button>
function confirmPayment() {
var isOkay = confirm("Confirm Payment?");
if (isOkay) {
return true;
} else {
return false;
}
}
我尝试调试我的代码,我可以看到它返回 false,然后返回 post。不确定我的代码是否有问题?
您需要在点击处理程序中接受 event
对象,并使用 preventDefault
:
function confirmPayment(event) {
event.preventDefault()
...
...
}
你需要在OnClientClick
中写return confirmPayment
试试这个:
<asp:Button ID="btnSubmit" runat="server" CssClass="CommandButton" Width="110px" OnClientClick="return confirmPayment();" UseSubmitBehavior="false" Text="Submit Payment" OnClick="btnSubmit_Click"></asp:Button>