使用Javascript重定向用户表单提交时出现问题提交
问题描述:
我有一个网页,我有一个表单。此表单包含一个按钮和一个文本框。当单击按钮或提交表单时,我想从文本框中获取文本并将其附加到网址。代码如下所示:使用Javascript重定向用户表单提交时出现问题提交
<form
name="askaquestion"
id="ask-a-question"
onSubmit="window.location.href='http://www.someurl.com/app/' + document.askaquestion.question_ask.value"
>
<input
type="submit"
name="submit_question"
value="Submit"
class="submit"
onClick="window.location.href='http://www.someurl.com/app/' + document.askaquestion.question_ask.value"
/>
<input
type="text"
name="question_ask"
value="What's Your Question?"
class="inputsmall"
id="ask_us_a_question_textbox"
/>
</form>
的问题是,这个作品有时,有时带我到这个网址:
http://dev/fs?submit_question=Submit&question_ask=help&hiddenInputToUpdateATBuffer_CommonToolkitScripts=1#
我不知道为什么会这样。表单在使用jquery淡入淡出,这可能是一个问题吗?有没有更好的方法来实现所描述的行为?
感谢, 本
答
添加return false;
到onSubmit
:
onSubmit="window.location.href='http://www.someurl.com/app/' + document.askaquestion.question_ask.value; return false;"
这将停止表单提交(这就是为什么你有http://dev/fs?submit_question...
- 这表明你的页面被命名为fs
)。
答
当用户点击提交按钮时,会在执行onClick操作后触发“提交”操作。为防止提交行为发生,您需要按照Gert所说的做法,在<input onClick="return false">
或<form onSubmit="return false">
上返回false。
为什么你不使用<form action="http://www.someurl.com/app/">
,所以数据将被发送到你指定的网址?
如果您确实希望将数据发送到两个不同的地方,最好在第一个处理程序中执行第二组请求,即表单操作指定的内容。
一些有用的链接:
http://www.w3schools.com/tags/tag_form.asp
http://bytes.com/topic/javascript/answers/809181-noobie-onclick-confirm-return-false
+1福气! – Reigel 2010-07-28 02:05:17
这很好,谢谢! – b3n 2010-07-28 02:07:09
@ b3n - 没问题。 :) @Reigel - 谢谢。 – 2010-07-28 02:10:41