我有几个复选框,我想为标记为选中的每个元素执行一个函数。我怎么能这样做?
在我的特定情况下,我认为这可能会更容易一些,因为复选框的构造如下:
$get_json_values=json_decode($json_string,true);
foreach ($get_json_values as $key=>$getlikes) {
if($getlikes['type']=='like') {
?>
<div>
<input type="checkbox" name="<?php echo $getlikes['name'] ?>" value="<?php echo $getlikes['id'] ?>" checked>
<a href="https://www.facebook.com/<?php echo $getlikes['id']; ?>" target="_top">
<?php echo $getlikes['name'] ?> </a>
</div>
<?php
}}
?>
所以我觉得它应该是这样的:
function doIfChecked()
{
foreach ($get_json_values as $key=>$getlikes) {
if($getlikes['type']=='like'&&<sequence that checks if checkbox is checked>)
{//do stuff}
}
}
有人可以帮忙吗?
感谢Julian H. Lam,我找到了一个很好的答案,但是我的问题是,对于每个元素,我需要向服务器发出请求(比如facebook上的一个页面) ,但我不能把任何PHP放在JavaScript中。
那么,我怎么能这样做,因为js中不允许php?
答案 0 :(得分:3)
使用javascript:
var checkboxes = document.querySelectorAll('input[type="checkbox"]'),
numCheckboxes = checkboxes.length,
x;
for(x=0;x<numCheckboxes;x++) {
if (checkboxes[x].checked === true) {
// add code here to be done for each checked element
// you can refer to the checked element by calling "checkboxes[x]"
}
}