我有一个文本框 txtUser
用户可以在其中输入用户名,此文本框旁边有一个删除按钮。我正在使用 OnClientClick
提供删除确认<asp:button>
的属性.
消息是:你确定要删除这个用户吗?这有效。
我想将此消息更改为 Are you sure you want to delete 'username'? 通过使用 GetElementByID("<%= txtUser.ClientID %>")
从文本框中获取用户名的值并将其存储在变量 user
中
<script type="text/javascript">
var username = document.GetElementByID(<%= txtUser.ClientID %>")
</script>
现在我想用这个 username
OnClientClick 调用中的变量。我尝试过类似的方法,但没有成功:
<asp:Button ID="BtnDelete" runat="server"
OnClientClick="return confirm('Are you sure you want delete "+username+"');">
Delete</asp:Button>
最佳答案
快到了......
<script type="text/javascript">
var username = document.getElementByID("<%= txtUser.ClientID %>").value;
</script>
然后
<asp:Button ID="BtnDelete" runat="server" OnClientClick="return confirm('Are you sure you want delete '+username+'?');">Delete</asp:Button>
应该这样做。您需要获取文本框的值,然后将用户名附加到 are you sure 字符串,而不是将其附加到 ASP 控件。
作为一个可能的警告词,如果在呈现文本框之前尝试获取文本框的值并将其分配给 username
,则会导致错误。确保 username
的分配在标记中的文本框之后,或者使用类似 window.onload
的内容。
关于javascript - 如何在 ASP.NET 控件的 OnClientClick 属性中使用 javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16474542/