我正在尝试使用classname在Jquery中引用我的checkbox元素。 Classname是一个PHP变量,它的引用我首先存储在我的jquery变量中。当我使用此变量来引用我的类时,变量没有获取值。使用以下代码可以清楚地解决问题:
<script>
var ch='<?php echo $ch_cnt; ?>';
$('input.'+ch).on('change', function (e) {
if ($('input.'+ch+':checked').length > 3) {
$(this).prop('checked', false);
alert("allowed only 3");
}
});
</script>
当我在开发者控制台中检查它时,我得到了变量ch中的值,但是在函数中,它显示了ch作为文本而不是显示值。我用它做错了什么?
答案 0 :(得分:1)
不要将<?echo json_encode($ch_cnt) ?>
放在引号内。 json_encode()
为您添加字符串引号,因此您可以在Javascript值中获得额外的引号集。这里使用json_encode
的重点是它将为Javascript文字输出适当的语法,您不需要引用它。
var ch=<?php echo json_encode($ch_cnt); ?>;
由于您重复此代码,因此您需要将Javascript放在IIFE中,因此ch
的范围仅限于该函数。
<script>
(function(ch) {
$('input.'+ch).on('change', function (e) {
if ($('input.'+ch+':checked').length > 3) {
$(this).prop('checked', false);
alert("allowed only 3");
}
});
})(<?php echo json_encode($ch_cnt); ?>);
</script>
答案 1 :(得分:1)
试试这个
erlc *.erl; ERL_LIBS="..:$ERL_LIBS" erl -noshell -s perf_couch_skew main 1000000 -s init stop
Queue size: 1000000
12321.649 ms