2017-09-27 55 views
0

页面加载后,所有复选框保持未选中状态(图片如下),我从java会话中获取value1文本并将其存储在JSON对象下,现在我比较下面的页面的value1文本与来自session的value1文本匹配。如果找到匹配,则将复选框设置为true,否则请不要选中。我想下面,但它会检查所有的箱子..当页面加载时使用jquery有条件地检查框

<script type="text/javascript"> 
      $.s1.proxy.contentReady(function() { 
       var sessionValue = <%= json %>; //loaded from java session 
       sessionValue.forEach(function(sessionValue) { 
         $("input:checkbox[name=myFormProperties]").each(function(){  
          var val = $(this).closest("tr").find("td:nth-child(2)").text().trim(); 
          if(val!=null && val!=''){ 
           if (sessionValue.startsWith(val)) { 
            alert("session and page value match found "); 
            $("input:checkbox[name=myFormProperties]").attr('checked', true); // this makes all the checkbox value true. How to make only //specific check box value true here 
           } 
          } 
         }); 
        }); 
      }); 

     </script> 

在复选框不错,选择的值来作为一个链接旁边的复选框,如图照片。 Check Boxes

+0

哟('checked',true);'而不是' –

回答

1

这是因为您将其设置在名称为myFormProperties的所有复选框上。

代替$("input:checkbox[name=myFormProperties]").attr('checked', true);(这只是再次选择所有的复选框),就这样从

$(this).attr('checked',true); 
0

正在制作的每个回路与您的代码检查所有的复选框选中当前复选框

$("input:checkbox[name=myFormProperties]").attr('checked', true);  

为了检查与值使用复选框下方

相关问题