1

我有以下内容HTML

<input type='text' name='af_student_startdate' id='start115'>
<input type='text' name='af_student_startdate' id='start116'>

以及以下jQuery

$('#save').click(function() {

    var values = {};

    $('input[name="af_student_startdate"]').each(function(n, el){
        values [ $(el).attr('id') ] = $(el).val();
    });

    $.ajax( {
    type : 'POST',
    url : '/update.php',
    data : {af_student_startdate: values}
  });

})

POST例如,这将:

af_student_startdate[start115]  2012-09-01
af_student_startdate[start116]  2012-09-25

如何删除文本“开始”,以便仅将INT值发布到 update.php?

4

2 回答 2

2

尝试这个:

values [ $(el).attr('id').match(/\d+/g) ] = $(el).val();

您还可以编码:

values [ this.id.match(/\d+/g) ] = this.value;

这比创建不必要的 jQuery 对象更快更好。

于 2012-09-10T10:35:18.250 回答
1

或者你可以这样做

<form method="POST" action="/update.php" id="af_student_startdate_update_form" onsubmit="return false;">
<input type='text' name='af_student_startdate[115]' id='start115'>
<input type='text' name='af_student_startdate[116]' id='start116'>
</form>

$.ajax({
    type : 'POST',
    url : '/update.php',
    data : $('#af_student_startdate_update_form').serialize();
})
于 2012-09-10T10:40:08.757 回答