javascript清除asp文本框上的html按钮点击

问题描述:

我想清除一个asp文本框,当点击一个按钮(html)。javascript清除asp文本框上的html按钮点击

所以基本上JS函数是:

<script type="text/javascript"> 
    function clearTextBox() { 
     document.getElementByID('<%=txtFName.ClientID%>').value = ""; 
    } 
</script> 

和一个asp.net文本框

<asp:TextBox ID="txtFName" runat="server" class="form-control" placeholder="First name" AutoCompleteType="Disabled" MaxLength="30" /> 

而一个HTML按钮

所有按钮和其他控制处于asp更新面板(不知道它是不同的)

没有happend当我点击的HTML clearButton,在Web控制台上的错误:

Uncaught TypeError: undefined is not a function 
clearTextBox 
onclick 

变化

document.getElementByID 

document.getElementById 

,它的工作。幸得Mudassar

谢谢大家!

我会建议添加JS到Head part of page.那么就不会创建Uncaught ReferenceError: clearTextBox is not defined

+0

我把它放在'

'上,但是仍然是同样的问题,实际上如果我把其他的JS和Jquery放在头上,它会引起很多问题,除非我把它们放在body标签下 – 2014-10-30 07:02:10
+0

你能够查看代码到页面 – Amit 2014-10-30 07:02:45

+0

你是什么意思“查看代码到页面” – 2014-10-30 07:06:09

试图通过文本框的标识,你的情况应该是:

document.getElementByID('txtFName').value = ""; 

,然后分配方法,你输入这样的事情

asp:textbox ..... onClick="yourMethodName" 
+0

试过'document.getElementByID('txtFName')。value =“”;'但是同样的错误 – 2014-10-30 07:07:15

+0

我还有一个想法。尝试改变文本框中的方法OnClick OnClientClick =(“YourJavaScriptMethodName”) – 2014-10-30 07:17:09

+0

但我希望它的HTML按钮... – 2014-10-30 07:24:26

您需要添加

ClientIDMode="Static" 

,所以你的文本框看起来像这样

<asp:TextBox CliendIDMode="Static" ID="txtFName" runat="server" class="form-control" placeholder="First name" AutoCompleteType="Disabled" MaxLength="30" /> 

在asp.net页面时呈现控件的ID发生变化

我建议你应该使用jQuery。

$("#txtFName").val(""); 

而且在你的JavaScript功能

也返回false尝试在一个阻止你的JS

+0

试过,并得到同样的错误! – 2014-10-30 07:04:03

+0

@RonaldinhoState我更新我的回答 – fc123 2014-10-30 07:07:48

+0

您可以发布全jQuery函数,以及如何调用它的控制,我的JS和jQuery是弱 – 2014-10-30 07:08:39

移动你的下面的js代码在页眉或其他一些地方,现在它是无法找到你js功能。它必须由于某种错误或中断而破裂。或者尝试将js alert/debugger放入你的js函数中,以确保你甚至能够找到这个函数。清除文本框是下一步。

<script type="text/javascript"> 
function clearTextBox() { 
    alert('Hello World'); 
}</script> 

现在,如果你能看到你的警报,那么你的代码就可以找到你的功能。然后修改喜欢你的文本标签:

<asp:TextBox CliendIDMode="Static" ID="txtFName" runat="server" class="form-control" placeholder="First name" AutoCompleteType="Disabled" MaxLength="30" /> 

现在,修改你的clearTextBox功能,如:

<script type="text/javascript"> 
function clearTextBox() { 
    document.getElementById('txtFName').value = ''; 
}</script> 
+0

警报工作,但在改变'的document.getElementById(“txtFName”)值=“”;'这表明同样的错误 – 2014-10-30 08:20:16

+0

请粘贴确切的错误 – 2014-10-30 08:22:49

+0

打开浏览器控制台,输入$('输入'),现在检查你能看到你的文本框'txtFName'在这个列表中,试着找到它的确切的客户端ID – 2014-10-30 08:24:55

function clearTextBox() { 
    var elements = [] ; 
    elements = document.getElementsByClassName("form-control"); // your class name 

    for(var i=0; i<elements.length ; i++){ 
     elements[i].value = "" ; 
    } 
} 
+0

我有一个以上的控制usi ng'form-control' CSS类,我该怎么办? – 2014-10-30 13:26:18