0

我正在制作的 Chrome 扩展程序有一个 popup.html,其形式如下:

<head>
  <script src="myscript.js"></script>
</head>
<form id="myform" action="http://www.example.com/myurl.jsp" method="get" target="_blank">
  #<input type="text" size="10" name="numid" value="" />
  <input type="Submit" value="Go" />
</form>

myscript.js 在 manifest.json “background” 和 “content_scripts” 部分中列出:

"background": { "scripts": ["myscript.js"] }`
"js": ["jquery-1.8.2.min.js", "myscript.js"]

和 myscript.js 包含:

$(document).ready(function(){
  $('#myform').submit(function() {
  alert("alert!");
});

当我单击 Go 按钮或按表单的 enter 键时,如何让它显示 alert()?

4

1 回答 1

0

如果您只打算在弹出窗口中使用它,则不需要指定popup.jsin 。backgroundcontent_script

警报未显示,因为您无法显示弹出窗口中的警报。而是尝试:

  • document.getElementsByTagName('body')[0].innerHTML = "Works!"(这将用一条消息替换整个弹出窗口)
  • 或使用console.log("Works!")(这将向开发人员工具控制台输出文本 - 请务必查看弹出式开发人员工具,而不是当前页面开发人员工具)

编辑:myscript.js似乎无效,您丢失了});. 另外,请注意您可能会错过提交回调中的代码执行结果,因为页面会立即重新加载。

$(document).ready(function(){
  $('#myform').submit(function() {
     alert("alert!");
  });
});
于 2012-10-19T08:21:08.617 回答