使用JS更改文本

时间:2013-11-18 16:52:25

标签: javascript html

如何在点击

时通过JavaScript更改文本框/输入的文本
var txtSearch = document.getElementById("txtSearch");
        txtSearch.onmousedown= txtClear;

        function txtClear() {
            txtSearch.value = "";
        }

5 个答案:

答案 0 :(得分:2)

您需要在加载DOM后分配处理程序:

window.onload = function() {
    var txtSearch = document.getElementById("txtSearch");
    txtSearch.onmousedown= txtClear;
};

否则,如果您的Javascript出现在HTML正文之前,则无法找到txtSearch元素。

答案 1 :(得分:0)

啊,如果我是对的......这实际上是一个常见的早期错误。我假设这是你的整个Javascript?它没有包含在任何功能中?如果是这种情况,这个问题也应该有助于答案:

getElementById and null - why?

答案 2 :(得分:-1)

您需要在对象上使用event listener并使用focus事件(假设此处的元素是输入):

document.getElementById("txtSearch").addEventListener("focus", function(event) {
    event.target.value = txtClear();
});

请注意,您不必使用function来设置值(如果这样做,您将需要return所需的值,或者将event传递给event.target.value = '' 1}}作为参数并修改该对象);您可以轻松使用空字符串({{1}})。

答案 3 :(得分:-1)

你可以只使用一行并仍在工作:

document.getElementById("txtSearch").onmousedown = function() { this.value = "" }

答案 4 :(得分:-3)

您正在做的是编写改变内部变量的代码。如果愿意,您没有做任何事情来将该信息写入页面或“屏幕”。变量foo.value更多地用于捕获文本或值,而不是将其写出来。

使用document.write(xxxx);作为向页面写入内容或更改现有HTML的方法。