使用 ASP.NET 在客户端重置表单时出现问题
我正在尝试在客户端使用 javascript 重置我的表单。代码如下所示:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" >
function Reset() {
TextBox1.text = "";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Reset()" />
</div>
</form>
</body>
</html>
这当然不起作用,我收到 Button1 未定义的错误。我尝试在浏览器中查找控件的名称(通过查看页面源代码)并使用它而不是其 ID,但这也不起作用。
I'm trying to reset my form using javascript on client side. The code looks like this:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" >
function Reset() {
TextBox1.text = "";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Reset()" />
</div>
</form>
</body>
</html>
This of course isn't working, I get the error that Button1 is undefinded. I tried looking control's name within browser (by viewing page source) and using that instead of its ID but that didn't work either.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要使用 getElementById 获取值
you need to get the value using getElementById
我建议您在 JavaScript 代码中使用 jQuery 。无论如何,这是一个标准。
引用 jQuery 后,您可以按如下方式重写 JavaScript:
如果您仍然不想使用 jQuery,那么您需要使用其客户端 ID 访问您的元素,如下所示:
另外,正如 @Jon 指出的,您需要重命名将
OnClientClick
值更改为resetForm()
或重命名您的 JavaScript 函数。I advise you to use jQuery for your javascript code. It's a standard anyway.
After you reference jQuery, you may rewrite your JavaScript as follows:
If you still do not want to use jQuery, then you need to access your element using its client ID like following:
Also, as @Jon pointed out, you need to either rename your
OnClientClick
value toresetForm()
or rename your JavaScript function.