2012-09-10 22 views
1

我有以下HTML從jQuery的POST刪除一些文字

<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?

+0

它使得在af_student_startdate自動索引? –

回答

2

試試這個:

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

您還可以代碼:

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

這是更快,比創建不必要的jQuery對象更好。

+0

您好,感謝您的快速回復。像魅力一樣工作! – David

+0

@大衛你好,不客氣。 – undefined

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(); 
})