[英]I want to delete record from GridView.Before to this ask for confirmation like “Are you sure to delete?”
[英]Delete does not ask for confirmation
单击“删除”按钮时,如果所选节点具有子节点,则将弹出确认框。 否则,它什么也不做。
现在,当我单击删除时,它只是删除而没有确认。
这是代码:
<asp:Button ID="btn_delete" runat="server" Height="32px"
onclick="btn_delete_Click" OnClientClick = "return childnode();"
Text="Delete" Visible="False" />
<script type="text/javascript">
function childnode() {
var treeViewData = window["<%=nav_tree_items.ClientID%>" + "_Data"];
var selectedNode = document.getElementById(treeViewData.selectedNodeID.value);
if (selectedNode.childNodes.length > 0) {
return confirm("heloo");
}
return false;
}
</script>
如果在某些情况下不希望按下按钮,则需要从函数返回false
。 当前,仅在调用confirm
时从函数返回值。
如果一个或两个if条件均失败,则如果您不希望事件冒泡激活按钮/发送表单,则添加return false
。
function childnode() {
var treeViewData = window["<%=nav_tree_items.ClientID%>" + "_Data"];
if (treeViewData.selectedNodeID.value != "") {
var selectedNode = document.getElementById(treeViewData.selectedNodeID.value);
if (selectedNode.childNodes.length > 0) {
return confirm("heloo");
}
return false; // don't send form
}
return false; // don't send form
}
确保函数内部的逻辑是正确的,当尝试获取未定义变量的属性时,网络浏览器通常会静默失败。
在按钮定义中,您编写了OnClientClick = "return childnode();"
,请尝试将其更改为OnClientClick="return childnode();"
看看是否可以解决问题。
查看事件是否完全触发, OnClientClick="alert(123);"
。
您的函数并没有全部return
。 可能您的功能存在而未确认。 查看您的逻辑,并确定如果您的if
语句之一未通过,您想做什么。
更改此:
onclick="btn_delete_Click" OnClientClick = "return childnode();"
对此:
onclick="btn_delete_Click;return childnode();"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.