我正在开发一个简单的JavaScript程序,根据用户感兴趣的网站在一个或多个网站上搜索葡萄酒评论。
我的问题是window.open命令只打开用户选择的第一个网站,似乎无法打开其他网站。此外,滚动浏览列出的网站的网址后,我收到一条错误消息:405 - 方法不允许
您可以在http://www.divinocards.com/search_engine_4.htm
查看该计划我花了几个小时试图弄清楚程序为什么会停滞不前。我使用了调试器,似乎正确分配了所有值。这只是我无法打开多个窗口。弹出窗口拦截器似乎不是一个问题,因为我暂时禁用了它们。
非常感谢任何帮助。
此致 OB
答案 0 :(得分:1)
将type
的{{1}}属性从input
更改为submit
(button
的{{1}}更改为input
,事实上,所有{{} 1}}你通过JavaScript专门使用的,即没有真正提交给服务器)。
更多详细信息 - 您的name="Find"
没有input
属性。看看这里:
当您点击“查找”按钮时,当前代码中发生的情况是您正在提交到未知位置。按照标准:
此属性是必需的(请参阅第17.3节“FORM”元素)。
该部分的细节还解释了为什么它重定向到“无处”:
form
所以,最后由特定的浏览器决定在这里做什么(实现细节,而不是你想要依赖的东西)。
答案 1 :(得分:0)
如果您只想打开目标窗口,可以删除<form>
标记,并在查找按钮中添加click
事件。
将<input>
标记的类型属性设置为按钮无法阻止表单提交,请在文本字段中按enter
您还可以停用表单的onsubmit
事件。
喜欢
document.forms[0].onsubmit = function(){return false;}