如何为document.activeElement设置文本值?

时间:2011-01-31 17:26:01

标签: javascript html input xul

知道我的document.activeElement是输入字段(我不确切知道组件的名称,但可能是Google的搜索输入字段,例如),如何以编程方式在其上设置文本?

- 更新

我正在尝试使用xul应用程序,在页面加载后通过javascript。粘贴命令工作正常,所以我知道该字段具有焦点。 (我没有把Xul标签放在因为它只是关于javascript)

5 个答案:

答案 0 :(得分:1)

如果您确定它是输入文本字段,只需设置值:

document.activeElement.value = 'value'

答案 1 :(得分:1)

请参阅mozilla reference。这与document.getElementById()

的类型相同
document.activeElement.value = 'new value';

答案 2 :(得分:1)

如果没有看到你的代码及其运行的上下文,我只能推测。但是,我的猜测是您从XUL应用中调用document.activeElement,这意味着document是Chrome文档,而不是内容页面。在这种情况下,活动元素可能是您用于显示内容的browseriframe元素。

答案 3 :(得分:0)

我觉得有点麻烦,因为我在一个Xul应用程序中。 Javascript应该像浏览器一样工作,但它没有。

我做的工作是(将内容放入剪贴板后):

controller.doCommand('cmd_selectAll');
controller.doCommand('cmd_paste');

答案 4 :(得分:0)

如果您想要聚焦元素相对于给定应用程序窗口的任何位置,例如它可能位于<browser>元素内,请使用与document.commandDispatcher.focusedElement.value相同的document.commandDispatcher.focusedWindow.document.activeElement.value。这为您提供了cmd_paste操作的元素。