javascript - 发送通过 AJAX 更改的元素的值

标签 javascript ajax checkbox

我想在值更改时捕获复选框的值,然后通过 Ajax 发送它。

我的 HTML 页面中显示了数百个复选框,因此我无法在一个值更改时简单地发送所有值。我只想发送刚刚更改的复选框的值。

这是我的 HTML 代码:

<INPUT type="checkbox" name="cb_redir301" value="post_id_445">
<INPUT type="checkbox" name="cb_redir301" value="post_id_573">
<INPUT type="checkbox" name="cb_redir301" value="post_id_264">
<INPUT type="checkbox" name="cb_redir301" value="post_id_387">
<INPUT type="checkbox" name="cb_redir301" value="post_id_190">
(...)
<INPUT type="checkbox" name="cb_redir301" value="post_id_268">

我尝试使用以下 Javascript 来捕获并发送值,但它不起作用,可能是因为复选框的名称('cb_redir_301')不是唯一的。

$('#redir_selector').change(function(evt) {
    $.post(ajaxurl, {
        action: 'save_backend_assocs', 
        nonce:  $('#ajax_admin_redir_selector_nonce').text(),
        cb_redir301: $(this).is(':checked')
    }, function(response) {
                    });

            });

});

那么,我怎样才能告诉 JS 只发送已更改的复选框的值呢?

最佳答案

更快:

var checkboxes = document.querySelectorAll("input[type='checkbox']");
for(var i = 0 ; i < checkboxes.length ; i++) {
    checkboxes[i].addEventListener("change", updateData);
}

关于javascript - 发送通过 AJAX 更改的元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30850161/

相关文章:

javascript - 如何缩短重复的 javascript php 代码

Javascript 闭包 : How to add dynamic baselayers to Cesium map

javascript - 获取Category过滤控件的类型

java - 如何在 Swing 中制作只读的 JCheckBox?

javascript - 选中复选框以在 DOM 中消失

javascript - Angular 应用程序在 github.io 上抛出 404 错误

javascript - Ajax:构建 HTML 与注入(inject) HTML

php - 为什么 AJAX 不向我的 PHP 页面发送数据?

java - 非 UTF 8 编码的 CSV 特殊字符问题

Android 复选框文本不显示