我有一个chrome扩展,其中有两个文本框,一个用于URL,另一个用于LDAP。每当用户点击扩展图标时,就会打开一个弹出页面,并在下面的代码的帮助下用当前页面URL填充URL文本框:
function setValue()
{
var text = document.getElementById("url_textbox");
var ldap = document.getElementById("ldap_textbox");
chrome.tabs.getSelected(null, function(tab) {
text.value = tab.url;
ldap.focus();
});
}
语句ldap.focus()在这里不起作用。我在页面加载时调用此函数。
<body onload = "setValue();">
我能为此做些什么?
编辑:此语句从Id为ldap_textbox的文档中获取HTML元素。
var ldap = document.getElementById("ldap_textbox");
答案 0 :(得分:0)
我刚刚为此找到了解决方案。我需要将焦点放在URL文本框下方的ldap文本框中,出于某种原因,在弹出页面中,默认焦点将转到第一个元素。所以,我将第一个元素更改为ldap文本框。 :)
<script type="text/javascript">
function setValue()
{
var text = document.getElementById("url_textbox");
chrome.tabs.getSelected(null, function(tab) {
text.value = tab.url;
});
}
</script>
<html>
<body onload="setValue();">
<table>
<tr>
<td>LDAP</td><td><input type="text" id="ldap_textbox"/></td>
</tr>
<tr>
<td>URL</td><td><input type="text" id="url_textbox"/></td>
</tr>
</table>
</body>
</html>