使用AJAX提交包含textarea的表单

时间:2014-04-12 15:13:34

标签: jquery

我无法使用AJAX提交表单,当我在from中包含textarea时,问题就存在了,当我删除它时,表单提交正确。

$(document).ready(function() {
    $('form').submit(function(event) {
        var formData = {
            'name'              : $('input[name=name]').val(),
            'cont'          : $('input[name=cont]').val(),
            'date'  : $('input[name=date]').val(),
            'prix'              : $('input[name=prix]').val(),
            'timestart'             : $('input[name=timestart]').val(),
            'nbm'   : $('input[name=nbm]').val()             
        };
        $.ajax({
            type        : 'POST', 
            url         : 'zzz.php',
            data        : formData,
            dataType    : 'json' 
        }) ........

2 个答案:

答案 0 :(得分:1)

如果我从comment textarea name="cont"属性{<1}}获得了正确的结果:

<textarea name="cont" placeholder="your msg"></textarea>

但要获取对此textarea元素的引用,您使用的是input[name=cont]选择器,它会选择inputname="cont"个元素而不是textarea个元素

选择您应该使用的textarea

$('textarea[name=cont]')

答案 1 :(得分:0)

请使用jut一行代码

$("#formid").serialize();

而不是


    var formData = {`enter code here`
                'name'              : $('input[name=name]').val(),
                'cont'          : $('input[name=cont]').val(),
                'date'  : $('input[name=date]').val(),
                'prix'              : $('input[name=prix]').val(),
                'timestart'             : $('input[name=timestart]').val(),
                'nbm'   : $('input[name=nbm]').val()             
            };

然后尝试提交