0

我需要模拟表单提交。我无法以普通方式提交表单,因为表单会根据用户选择的字段进行过滤。

例如 :

有两种类型的广告(报价和请求),它们都有相同字段的联系方式,但是如果用户在提交表单时选择第一个选项(报价),则将提交空值,因为第二个也有联系人。

这是我目前拥有的:

var form = $('form[name=\'com_shareflat.offers\']');
form.submit(function(event){
    event.preventDefault();

    // radio button with type(offer or request)
    var type = $('input[name=type]:checked', form);

    // user can enter login details or create new user
    var user_details = $('input[name=user_details]:checked', form);

    // each type is in separate container
    var data = type.closest('.form.container').find('input');
    // merging user details with type
    data.add(user_details.closest('.form.container input')).find('input');

    // here I need redirect sending post
    $.post({
        url : form.attr('action'),
        'data' : data.serialize()

    });
    return false;
});

问题:如何模拟表单提交只发送我自己的序列化数据?

4

1 回答 1

1

成功时重定向到 url。

$.post({
   url : form.attr('action'),
   'data' : data.serialize(),
   success: function(){
       window.location = form.attr('action');
   }
});
于 2013-10-13T12:20:18.590 回答