我想在点击按钮(html)时清除一个asp文本框。
基本上JS函数是:
<script type="text/javascript">
function clearTextBox() {
document.getElementByID('<%=txtFName.ClientID%>').value = "";
}
</script>
和一个asp.net TextBox
<asp:TextBox ID="txtFName" runat="server" class="form-control" placeholder="First name" AutoCompleteType="Disabled" MaxLength="30" />
还有一个HTML按钮
<span class="input-group-btn">
<button class="btn default" id="clearButton" type="button" onclick="clearTextBox()"><i class="fa fa-times"></i></button>
</span>
所有按钮和其他控件都在asp更新面板中(不知道是否有所不同)
当我点击HTML clearButton时,没有任何事情发生,Web控制台上的错误:
Uncaught TypeError: undefined is not a function
clearTextBox
onclick
答案 0 :(得分:1)
我建议将JS添加到Head part of page.
,然后它不会创建Uncaught ReferenceError: clearTextBox is not defined
答案 1 :(得分:1)
尝试传递文本框的ID,在您的情况下应该是:
document.getElementByID('txtFName').value = "";
然后为您输入类似
的方法asp:textbox ..... onClick="yourMethodName"
答案 2 :(得分:1)
在页眉或其他地方移动您的以下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>
答案 3 :(得分:0)
您需要添加
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
答案 4 :(得分:0)
function clearTextBox() {
var elements = [] ;
elements = document.getElementsByClassName("form-control"); // your class name
for(var i=0; i<elements.length ; i++){
elements[i].value = "" ;
}
}
答案 5 :(得分:0)