我有一个网页,我有一个表格。此表单包含一个按钮和一个文本框。单击按钮或提交表单时,我想从文本框中取出文本并将其附加到网址。代码如下所示:
<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>
问题在于这种方法有时有效,有时需要我使用此URL:
http://dev/fs?submit_question=Submit&question_ask=help&hiddenInputToUpdateATBuffer_CommonToolkitScripts=1#
我不确定为什么会这样。表单在使用jquery淡入和淡出,这可能是一个问题吗?有没有更好的方法来实现所描述的行为?
谢谢, 本
答案 0 :(得分:3)
将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
。)
答案 1 :(得分:0)
当用户点击提交按钮时,执行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