2009-10-11 65 views
-1

我有这个工作在除IE浏览器以外的所有浏览器。为什么它不起作用?为什么这不工作在IE - 表单提交问题

Here is the site

形式的代码是在这里:

<FORM name ="frontpagequestion"> 
<input class="" type="text" name="questiontitle" value="ask your question and press enter" onfocus="if(this.value == 'ask your question and press enter') {this.value = '';}" onblur="if (this.value == '') {this.value = 'ask your question and press enter';}" size = "100"> 
<input type="submit" style="position: absolute; left: -9999px" onClick="process();return false"> 
</FORM> 

的JavaScript代码是在这里:

function process(){ 
    var title = document.frontpagequestion.questiontitle.value; 
    title = escape(title); 

    $.cookie("INPUTBOX",title); 

    window.location = "https://stackoverflow.com/questions/ask"; 
} 

在IE浏览器 - 它只是返回到主窗体,不提交输入框值。

有什么想法?

+4

你的网站是堆栈溢出的副本还是什么?抄袭对网络不利! – halocursed 2009-10-11 19:49:13

回答

0

我注意到了几件事情。

一)提交按钮的点击事件返回false。返回false将取消事件的默认操作,所以在这种情况下,返回false将意味着不提交表单。

B)你的脚本设置window.location的,这将立即导致浏览器加载新的页面,而不是提交表单的。

+0

,但它在FF,Chrome和Safari中工作,所以我有点困惑,为什么它不能在IE中工作? – 2009-10-11 19:39:43

+0

Firefox中有哪些功能?据我所见,浏览器只是用/ questions/ask作为URL重新加载。什么让你认为表单获得提交? – 2009-10-11 19:43:31

+0

当你按下它把你的问题的输入框输入/卖出页面并添加内容到现场“问题的标题”在所有的浏览器,但IE – 2009-10-11 20:03:12

1

权呼叫改变URL是window.location.href = “[URL]”,AFAIK。

1

只是因为IE不执行提交按钮上的onClick事件。如果您从问题框中选择它,则按预期工作。

你应该尝试的<形式>标签onSubmit事件。这应该适用于所有浏览器。

+0

嗨Roosmaa遗憾的是,没有工作 - 我有和无束缚的onsubmit返回false并失败。你说得对有关tab键隐藏提交按钮,按下回车键 - 即工作 - 有在javacript仿效这种的方法: - psudeo代码:在按键输入 - 如果IE浏览器 - 选项卡提交场 - 点击 – 2009-10-11 23:47:31