我有这样的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="";
}

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

最佳答案

只需将函数从clear重命名为clearTextarea之类的名称,它将起作用。
clear()方法是指过时的document.clear()方法,在MDN中描述为:



同样根据HTML5 specification:



引用:

  • https://developer.mozilla.org/en-US/docs/DOM/document.clear
  • http://www.whatwg.org/specs/web-apps/current-work/multipage/obsolete.html#dom-document-clear
  • 关于javascript - 如何使用Javascript清除HTML上的文本框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15969307/

    10-13 01:56