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

时间:2014-10-30 06:52:44

标签: javascript c# jquery html asp.net

我想在点击按钮(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

6 个答案:

答案 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)

更改

document.getElementByID

document.getElementById

它有效。积分转到Mudassar

谢谢大家!