0
我认为我想要做的事情非常简单,但无法让它工作。我循环遍历一个表并从现有行获取一些值,该部分起作用。然后我使用AJAX尝试制作一个没有重复的多维数组,但有些东西不起作用。我真正想要做的是删除重复部分,重新排列数组和array_push新值。下面是我有:jquery每个循环成一个多个阵列,检查重复项
AJAX:
function getData(){
$("#table .mainTR").each(function(){
var key = $(this).find(".key").text();
var sel = $(this).find(".s").val();
var q = $(this).find(".q").val();
$.ajax({
type: "POST",
async: false,
data: {key: key, s: sel, q: q}
});
});
}
PHP:
if(isset($_POST['key'])){
$title = $_POST['key'];
$s = $_POST['s'];
$q = $_POST['q'];
if(!empty($_SESSION['check'])){
foreach ($_SESSION['check'] as $key=>$value){
if(in_array($title, $value)){
unset ($_SESSION['check'][$title]);
$_SESSION['check'] = array_values($_SESSION['check']);
array_push($_SESSION['check'], array("key"=>$title, "s"=>$s, "q"=>$q));
}
}
}else{
$_SESSION['check'] = array(array("key"=>$title, "s"=>$s, "q"=>$q));
}
}
有什么不对的逻辑是什么?它似乎应该工作。尝试删除表格行时,相同的foreach循环有效。它找到正确的KEY并删除它。为什么它不在这里工作?
你可否澄清一下?哪部分工作? PHP?与此同时,我注意到你为每个“#table.mainTR”解雇了$ .ajax。也许准备一个数据结构并通过$ .ajax发送一次可能是第一步。 – sixFingers 2013-05-12 14:27:57
工作的部分是在jQuery中获取正确的行数据。而且,是的,我注意到,它被触发的次数与行数一样多。你会如何建议我准备?将数据组合在一起,然后在PHP中分离? – user2025469 2013-05-12 14:33:25
将请求序列化为JSON,并通过PHP中的“json_decode”对其进行反序列化。另外不要使用'async:false'。 – moonwave99 2013-05-12 14:35:35