2011-11-01 93 views
0

试图做很简单的事情。jquery:将输入值发布到PHP,无需序列化

有太多这些领域:

<input name="itempriceqty0" /><input name="itemprice0" /><br /> 
<input name="itempriceqty1" /><input name="itemprice1" /><br /> 
<input name="itempriceqty2" /><input name="itemprice2" /><br /> 

等等

目标是让这种格式的一个PHP字符串他们的价值观:itempriceqty0 = itemprice0,itempriceqty1 = itemprice1,itempriceqty2 = itemprice3等...

使用jquery序列化给出一个url格式的字符串,我需要多次拆分PHP以摆脱输入名称和其他& =字符。

$.post('test.php', { 
    itemprice: $('#itempricefieldswrapper :input').serialize() }, ... 
); 

什么是最简单的方法来处理它与jQuery的?

P.S.到处搜索。需要帮忙。谢谢。

+0

为什么要序列化,为什么不只是发布使用Ajax,发送参数 – Genjuro

回答

2

这样的事情?

给你所有的输入元素来收集类名,例如qty-input

收藏价值是这样的:

var values = ''; 
$('.qty-input').each(function(){ 
    values = values + this.name + '=' + this.value + ',' ; 
}); 
+0

非常感谢。我想每个()都是唯一正确的方法。 var itempricevalues =''; $('input [name^= itempriceqty]')。each(function(){num_id = $(this).attr('name')。replace(/ itempriceqty /,''); itempricevalues = itempricevalues + this.value +'='+ $('input [name = itemprice'+ num +']')。val()+','; }); –

0

你可以看一下JSON:

Convert form data to JavaScript object with jQuery

该职位显示了如何读取表单值成JSON和序列化。你将需要一个json解串器库,其中可以确定有很多选择。

(JSON:json_decode内置的权利?我不是一个PHP博伊)。

+0

如果你有PHP 5.2.0或更高版本,有一个内置[json_decode](http://php.net/manual/en /function.json-decode.php)函数。 –

0

你知不知道,你可以使用以下命令:

<input type="text" name="foo[]" value="field1" /> 
<input type="text" name="foo[]" value="field2" /> 

,然后,如果你这样做:

var_dump($_POST['foo']); 

你会得到:

array(2) { 
    [0]=> 
    string(6) "field1" 
    [1]=> 
    string(6) "field2" 
} 

我不确定这是否与你想要的相关,但看起来好像可能。