问题描述
arr =obj.modules[i].actions[j].method;text +="<input type='hidden' name='method' class='method' value='" + arr +"'/>";ary ="action_id_"+ i + "" + j;text +="<input type='hidden' name='boxid' class='boxid' value='" + ary +"'/>";text += "<input type='checkbox' id='" + ary + "' name='actionid' value='" + obj.modules[i].actions[j].actionid + "'/>";arr、ary是两个数组,class=boxid这个隐藏域的value对应checkbox的id,怎么才能用jquery找到这个id变动的checkbox。 问题补充:ary是个字符串数组,不是一个固定的值:var ary = new Array();ary ="action_id_"+ i + "" + j;
解决方案
<!DOCTYPE html><html> <head> <script type="text/javascript" src="../jquery-1.7.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){var ary ="action_id_0";var text ="<input type='hidden' name='boxid' class='boxid' value='" + ary +"'/>";text += "<input type='checkbox' id='" + ary + "' name='actionid' value='ABC'/>ABCD"; $("#console").append(text);//$("#"+ary).click(function(){alert($(this).attr("value")+"被选中.");});}); </script> </head> <body> <div id="console"></div> </body> </html>
解决方案二:
text += "<input type='checkbox' id='" + ary + "' name='actionid' value='" + obj.modules[i].actions[j].actionid + "'/>"; 你可以在该checkbox中加上点击方法,传入参数i,j。根据这两个值找到它,不是so easy吗?
解决方案三:
引用name='actionid' 名称不是固定的吗?按名称获取
解决方案四:
var boxid=$("boxid").val();$('input[name="actionid"]'.each(function(){if($(this).attr("id")==boxid){alert("找到了");}});
解决方案五:
把ary声明为全局$("#"+ary)