繁体   English   中英

Ajax和多种表单未提交

[英]ajax and multiple forms not submitting

尝试使用ajax / php提交多个表单,并且我想根据哪种表单更改成功输出,并且基于该表单,php处理页面的回显也应有所不同。 我没有成功。

我的html:

<form method="post" class = "teacher_account_form" id="pay_form" name="pay_form">                
    <input type="text" id="hourly_pay">
    <button type="submit" id="work_submit" name="work_submit"></button>
</form>
<div id = "pay_output"></div>
<form method="post" class = "teacher_account_form" id="edu_form" name="edu_form">                
    <input type="text" id="edu_level">
    <button type="submit" id="edu_submit" name="edu_submit"></button>
</form>
<div id = "edu_output"></div>

我的js :(不会将正确的输出发送到正确的div)

$( document ).ready(function() {

var button_clicked;
var output_div;
$('.account_submit').click(function() {
    button_clicked = $(this).attr('id');
    switch (button_clicked)
    {
        case "work_submit":
            output_div = "pay_output";
            break;            
        case "edu_submit":
            output_div = "edu_output";
            break;            
    }
});

var options = {
type: 'post',
url: "/users/p_teacher_account_work", 
success: function(response) {
    $('#' + output_div).html(response);
}
};

$('form').ajaxForm(options);

});

我的php :(不发送回显信息)

public function p_teacher_account_work() {

    // set up view
    $this->template->content = View::instance('v_users_teacher_p_account_work');

    if (isset($_POST['work_submit']))
    {
        echo "Your work details were added";
    }

    }
    else if (isset($_POST['edu_submit']))
    {
        echo "education details updated";
    }
}

首先,对于$('.account_submit').click您没有account_submit类。

其次,“提交”按钮将绕过您的jquery。 尝试更改为普通按钮或捕获onSubmit事件。

第三,我个人将沿着

    $("#pay_form").submit();

    $("#edu_form").submit();

您必须在clicking buttonreinitialize form options ,因此无需changing divs例如

var options = {
  type: 'post',
  url: "/users/p_teacher_account_work", 
  success: function(response,statusText, xhr,jqForm) {
      $(jqForm[0]).next('div').html(response);
  }
};

$('form').ajaxForm(options);

阅读文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM