提交HTML表单,执行javascript函数(alert然后重定向)

Har*_*rry 18 html javascript forms submit

我有一个JavaScript函数,当我通过'onClick'方法调用它时效果很好.基本上它的作用是从html表单中提取数据,然后根据该数据重定向到另一个页面.

但是,当我按下"输入"按钮提交表单/调用JavaScript函数,而不是使用onClick按钮来调用JavaScript函数时,它不会像我希望的那样响应.

我希望当用户按下键盘上的输入按钮时,同样的事情发生就好像他们点击页面上的"继续按钮"(通过onClick调用该功能)

这是我的代码:

JS功能:

function completeAndRedirect(){
    alert('You\'re nearly there! To complete your entry, you simply need to tap \'continue\' on the next page. Good luck!');
    location.href='http://google.com/?SID='+'<? echo $CATEGORY; ?>'+','+'<? echo $PLATFORM; ?>'+','+'<? echo $DEVICE; ?>'+'&email='+document.forms[0].elements[0].value;
}
Run Code Online (Sandbox Code Playgroud)

这是表格:

<form action="" method="post" onsubmit="completeAndRedirect()">
    <input type="text" id="Edit1" style="width:280; height:50; font-family:'Lucida Sans Unicode', 'Lucida Grande', sans-serif; font-size:22px">
</form>
Run Code Online (Sandbox Code Playgroud)

非常感谢任何可以提供帮助的人!

小智 57

<form action="javascript:completeAndRedirect();">
    <input type="text" id="Edit1" 
    style="width:280; height:50; font-family:'Lucida Sans Unicode', 'Lucida Grande', sans-serif; font-size:22px">
</form>
Run Code Online (Sandbox Code Playgroud)

改变动作以指向你的功能将以不同的方式解决问题.


Pra*_*man 10

您需要阻止默认行为.你可以使用e.preventDefault()或者return false;在这种情况下,最好的是,你可以return false;在这里使用:

<form onsubmit="completeAndRedirect(); return false;">
Run Code Online (Sandbox Code Playgroud)