簡體   English   中英

為每個檢查的元素執行功能

[英]Execute function for each element checked

我有幾個復選框,我想為標記為選中的每個元素執行一個功能。 我怎樣才能做到這一點?

在我的特殊情況下,我認為這可能會容易一些,因為復選框的構造如下:

        $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,我該怎么辦?

使用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]"
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM