我有一个删除文本字段(称为termsField
)并使用JQuery从div中清空文本(称为definitionContainer
)的函数,当用户单击按钮时,我会激活该函数。
function clearText(target){
var definitionDiv = document.getElementById("definitionContainer");
$('#definitionContainer').empty(); //empty the div
termsField.value = ""; //delete the text field
$(target).val = "";
这是我的文本字段和按钮的HTML:
<input id="termsField" type="search" autocorrect="off"
placeholder="Type something!" maxlength="2048">
<INPUT type="image" name="Clear" alt="Clear Search" src="clearX.png"
height="22" width="22" onClick="clearText(this)">
有谁知道为什么清除
definitionDiv
在Firefox中有效但termsField.value = "";
不起作用?两者都可以在Safari和Chrome中正常运行。我不介意测试IE,因为这是Web界面的一部分。 最佳答案
您还没有显示变量termsField
的定义位置。也许您尚未定义它,这很可能是问题所在,因为并非所有浏览器都执行IE(由IE引入)的丑陋事情,即使用与文档中元素ID相对应的属性来污染全局对象。以下对我有用:
var termsField = document.getElementById("termsField");
termsField.value = "";
同样,尽管这与
termsField
的问题无关,但jQuery的val()
是一种方法:$(target).val("");