2011-06-11 23 views
0

我通过ajax提交了一些表单数据,并取回了一个ID号码受影响的JSON数组。根据返回的JSON数据替换输入

使用这些id号码我需要用包含确认消息的div元素替换与coresponding值的输入复选框。

我的HTML看起来像这样:

<input type="checkbox" name="users[]" value="26"> 
<input type="checkbox" name="users[]" value="27"> 
<input type="checkbox" name="users[]" value="28"> 

数据从阿贾克斯返回提交如下所示:

["28","26"] 

我需要和价值观匹配这些ID与一个div更换输入元素看起来像这样的元素:

<div class="invited">Invited!</div> 

回答

0

我喜欢这种方式更好一点:

var ids=[26,28]; 

$.each(ids,function(index, el){ 
    $("input[value='"+el+"']").replaceWith('<div class="invited">Invited!</div>') 
}); 
+0

谢谢,这也适用,并且在提交单个值时没有相同的错误。 – Plasticated 2011-06-11 01:11:32

0
var yourArray = ['28', '26']; 

$('input[name="users[]"]').each(function(i) 
{ 
    for (var i = 0, ilen = yourArray.length; i < ilen; i++) 
    { 
     if ($(this).val() == yourArray[i]) 
     { 
      $(this).replaceWith('<div class="invited">Invited!</div>'); 
     } 
    } 
}); 
+0

对不起,多次修改,急于! :) – pixelfreak 2011-06-11 00:51:23

+0

工程,但只有超过1个输入提交。如果我只提交一个值,则什么都不会发生 – Plasticated 2011-06-11 01:05:15

+0

对我来说工作很好,但是Kingjiv的方法肯定比较短。 – pixelfreak 2011-06-11 01:20:50