如何使用Javascript清除HTML上的文本框

时间:2013-04-12 10:44:11

标签: javascript html button textarea clear

我有像这样的HTML代码

<html>
<script type="text/javascript" src='LatihanKuisJs.js'></script>
    <body>
        <form name="kuis">
            <table border="1" width="50%">
                <tr>
                    <th colspan="2" >Celcius
                </tr>
                <tr>
                        <td align="center" width="80%">Kelvin</td>
                        <td align="center"><input type="text" id="kelvin">
                        </td>
                </tr>
                <tr>
                    <td align="center" width="80%">Reamur</td>
                    <td align="center"><input type="text" id="reamur"></td>
                </tr>
                <tr>
                    <td align="center" width="80%">Fahrenheit</td>
                    <td align="center"><input type="text" id="fahrenheit"></td>
                </tr>
            </table>
            <input type="button" value="Calculate" onclick='calculateCelcius();'/>
            <br/><br/>
            <textarea rows="20" cols="90" id="textarea">
            </textarea>
            <br/><br/>
            <input type="button" value="Clear" onclick='clear();'/>
        </form>
    </body>
</html>

和外部javascript函数如下:

function calculateCelcius(){
    var kelvin = document.getElementById('kelvin');
    var reamur = document.getElementById('reamur');
    var fahrenheit = document.getElementById('fahrenheit');
    var textarea = document.getElementById('textarea');

    var hasil=(kelvin.value*1 + reamur.value*1 + fahrenheit.value*1);
    textarea.value += hasil + '\n';
}

function clear(){
    document.getElementById("textarea").value="";
}

当我尝试单击页面上的清除按钮时,文本区域不清晰。 怎么了?我该怎么办?

3 个答案:

答案 0 :(得分:9)

只需将您的功能从clear重命名为类似clearTextarea的内容即可。

clear()方法指的是过时的document.clear()方法,在MDN中描述为:

  

此方法用于在早期清除整个指定文档   (1.0之前版本)Mozilla版本。在最新版本的Mozilla中   应用程序以及Internet Explorer和Netscape 4中的这个   方法什么都不做。

同样根据HTML5 specification

  

clear()方法必须无效。

<强>参考文献:

  1. https://developer.mozilla.org/en-US/docs/DOM/document.clear
  2. http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#dom-document-clear

答案 1 :(得分:1)

如果你使用像这样的功能

function clearInput(element){
element.value="";
}

然后在输入中添加此

onfocus="clearInput(this)"

这可以多次用于任何文本字段或文本区域,因为对象的id在它调用函数的地方传递。

RKillah

答案 2 :(得分:-2)

在定义onclick事件时,尝试在函数名之前添加javascript: 像这样:

<input type="button" value="Clear" onclick='javascript: clear();'/>