Javascript 多个提交按钮通过传递变量执行不同的操作
我有一个类似下面代码的表单(称为index.php),带有多个提交按钮。我希望在提交按钮上有不同的php操作。第一个按钮不刷新浏览器页面,当然也不传递变量。另一个具有正常操作,可以重定向到新页面(这里是form_submit.php)。在的帮助下,我成功地使第一个按钮工作,但我无法区分第二个按钮和第一个按钮。有没有办法在这些按钮的功能之间切换Javascript 多个提交按钮通过传递变量执行不同的操作,javascript,php,ajax,Javascript,Php,Ajax,我有一个类似下面代码的表单(称为index.php),带有多个提交按钮。我希望在提交按钮上有不同的php操作。第一个按钮不刷新浏览器页面,当然也不传递变量。另一个具有正常操作,可以重定向到新页面(这里是form_submit.php)。在的帮助下,我成功地使第一个按钮工作,但我无法区分第二个按钮和第一个按钮。有没有办法在这些按钮的功能之间切换 <? php> if($_POST['formSubmit'] == "Next") { $var1 = $_POST['name1'];
<? php>
if($_POST['formSubmit'] == "Next") {
$var1 = $_POST['name1'];
$var2 = $_POST['name2'];.
session_start();
$_SESSION['variable1'] = $var1;
$_SESSION['variable2']= $var2;
header("Location: form_submit.php");
exit;
}
?>
<html>
<body>
<form action="index.php" method="post">
<input type="text" name="name1" id="name1" maxlength="50" value="<?=$var1;?>" />
<input type="text" name="name2" id="name2" maxlength="50" value="<?=$var2;?>" />
<input type="submit" name="dataSubmit" value="Insert Data" />
<input type="submit" name="formSubmit" value="Next" />
<script>
$(function () {
$('form').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'post',
url: 'data_submit.php',
data: $('form').serialize(),
});
});
});
</script>
</form>
</body>
</html>
一旦第一个按钮实际上不需要进行提交,您就可以在其上设置“onClick”事件处理程序,并将其设置为“button”。在这种情况下,按下按钮时只会触发JS,浏览器不会提交表单。我的意思是:
<input type="button" id="justButton" name="dataSubmit" value="Insert Data" />
<input type="submit" name="formSubmit" value="Next" />
<script>
$(function () {
$('#justButton').on('click', function (e) {
$.ajax({
type: 'post',
url: 'data_submit.php',
data: $('form').serialize(),
});
});
});
</script>
$(函数(){
$('#justButton')。在('click',函数(e)上{
$.ajax({
键入:“post”,
url:'data_submit.php',
数据:$('form')。序列化(),
});
});
});
首先,将单击的类添加到按钮:
$('.submitButton').click(function(){
$('.submitButton').removeClass('clicked');
$(this).addClass('clicked');
});
而不是在提交事件检查按钮中:
$('form').submit(function(){
var button = $('.submitButton.clicked');
if (button.attr('id') == 'name1') {
...
} else {
...
}
return false;
});
else if($\u POST['dataSubmit']=“插入数据”)