Heim  >  Artikel  >  Backend-Entwicklung  >  列表排序同一个name的表单怎么用serizelize()序列化

列表排序同一个name的表单怎么用serizelize()序列化

WBOY
WBOYOriginal
2016-06-20 12:27:031431Durchsuche

请教下问题,列表排序同一个name的表单怎么用serizelize()序列化呢,var paixu = $(":input[name='paixu']").serialize();用data:paixu,过去,只获取到最后一个排序。


回复讨论(解决方案)

<input type="text" name="test" value="t1"><input type="text" name="test" value="t2"><input type="text" name="test" value="t3"><input type="text" name="test" value="t4"><input type="submit" id="test" value="test"><script type="text/javascript">$("#test").click(function(){	var data;	data = $(":input[name='test']").map(function(){		return $(this).val();	}).get();	alert(data);})</script>

<input type="text" name="test" value="t1"><input type="text" name="test" value="t2"><input type="text" name="test" value="t3"><input type="text" name="test" value="t4"><input type="submit" id="test" value="test"><script type="text/javascript">$("#test").click(function(){	var data;	data = $(":input[name='test']").map(function(){		return $(this).val();	}).get();	alert(data);})</script>


这种方法我也可以实现,本来想试下用serialize()进行序列化,可没成功,用serialize()实现不了吗?

你要么遵守 php 的约定:同名对象用数组形式命名
要么从 file_get_contents('php://input') 取回数据自行解析

data:paixu,
paixu 要是一个json格式的数据,你序列化也不行啊
非要序列化可以这样
var data = $("#form").serialize();
$.ajax({
type: "post",
url:"xx.php",
data:{'data':data},
后台获取数据 $_POST['data']

回复:jam00,相同键值的name确实有点麻烦,还是遍历比较好用些吧,谢谢了

当然你也可以用 serializeArray
var paixu = {data : $(":input[name='paixu']").serializeArray() };

不过收到的是形如这样的数组
array(
  'data' => array(
    array('name' => 'paixu', 'value' => 1),
    array('name' => 'paixu', 'value' => 2)
  )
)

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn