第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

復選框偵聽器未觸發(fā)

復選框偵聽器未觸發(fā)

桃花長相依 2023-07-20 14:28:21
我設(shè)置了一個復選框,該復選框應(yīng)與列表中的每一行一起出現(xiàn)。我想根據(jù)復選框狀態(tài)傳遞 row.id 和布爾值。但問題是它只適用于第一個復選框:id 和布爾狀態(tài)被傳遞。{% for row in list %}   ....    <label>      Off      <input name="active{{ row.id }}" id="active{{ row.id }}" type="checkbox" list_id="{{ row.id }}">      <span class="lever"></span>      On    </label>   ....{% endfor %}我添加了 javascript 來監(jiān)聽復選框狀態(tài),并在檢查后向 Flask 應(yīng)用程序發(fā)送 POST 請求。它可以工作,但僅在選中第一個復選框時才會觸發(fā),Jinja2 生成的所有其他復選框都會被忽略。document.addEventListener('DOMContentLoaded', function () {  var checkbox = document.querySelector('.input[type="checkbox"]');  checkbox.addEventListener('change', function () {  var list_id = $(this).attr('list_id');      if (checkbox.checked) {        req = $.ajax({          url : '/dashboard',          type : 'POST',          data : { id: list_id, active : 'true' }        });      console.log(list_id);    } else {          req = $.ajax({          url : '/dashboard',          type : 'POST',          data : { id : list_id, active: 'false' }        });      console.log(list_id);    }  });});
查看完整描述

1 回答

?
胡子哥哥

TA貢獻1825條經(jīng)驗 獲得超6個贊

  1. 當你使用querySelector時你只能得到第一個

  2. 輸入前面有一個不應(yīng)該出現(xiàn)的點

  3. 你有 jQuery,所以使用它 - 它會一次性選中所有復選框,而不需要querySelectorAll

$(function() {

  $('input[type="checkbox"]').on('change', function() {

    var list_id = $(this).attr('list_id');

    console.log(list_id);

    req = $.ajax({

      url: '/dashboard',

      type: 'POST',

      data: {

        id: list_id,

        active: this.checked ? 'true' : 'false'

      }

    });

  });

});


查看完整回答
反對 回復 2023-07-20
  • 1 回答
  • 0 關(guān)注
  • 156 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號