打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
javascript-通过ajax具有唯一ID的多个复选框

我正在一个网站上,该网站现在可以随时进行,但是要完成一项新任务,我需要选中复选框以仅存档新闻项.如果愿意,也可以选择“博客文章”.

想法是在每个博客帖子上都有一个复选框,如果您选中该复选框,则该帖子应被存档. (仅在管理员模式下).

我需要ajax来完成这项工作,但是我还没有学到. PHP部分没有问题.

好吧,问题确实在于我不知道如何将每个复选框的唯一ID传递给JavaScript函数,然后传递给PHP函数.

好的,我有一组博客文章,女巫复选框,如下所示:

<div class="news_item">    <input name="checkbox_blog" id="checkbox1" value="1" type="checkbox"  /></div><div class="news_item">    <input name="checkbox_blog" id="checkbox2" value="1" type="checkbox"  /></div>

等等.从MySQL的ID填充ID.

我为ajax复选框提供了某种插件,但仅适用于一个复选框.

基本上是这样的:

$("#checkbox").change(function() {     if($(this).is(":checked")) {         $.ajax({            url: 'admin/archive_it',            type: 'POST'        });    } else {        $.ajax({            url: 'admin/dont_archive_it',            type: 'POST'        });    }});

在一个复选框上效果很好,但是我不知道如何继续.

有小费吗?

我认为可以使用两个不同的php脚本来检查和取消选中博客文章,这没关系,这并不重要,我只希望它开始使用不同的复选框.

谢谢!

解:

我将id更改为class,并使用了Arun P Johny的代码:

$('.checkbox_blog').change(function () {$.ajax({    url: this.checked ? 'admin/archive_it' : 'admin/dont_archive_it',    type: 'POST',    data: {        id: this.value    }    });});

并且由于我使用的是CodeIgniter,并且启用了CSRF-security选项,因此必须将其添加到数据中:

<?=$this->security->get_csrf_token_name()?> : '<?=$this->security->get_csrf_hash()?>',

现在,它可以完美运行!谢谢大家!

解决方法:

您几乎在那里,除了您可能需要注意的几件事之外,例如

>为所有复选框添加一个通用类,以便下面的事件处理程序对于所有复选框都可以正常工作.
>尽管url是唯一的区别,但无需保留多个ajax调用引用,因此我改进了您的代码,甚至更正了我注意到的几件事.

JS代码:

$(".checkbox").on('change',function() {          var chkBit=$(this).is(":checked");         var url;        if(chkBit)             tarUrl='admin/archive_it';        else            tarUrl='admin/dont_archive_it';        $.ajax({                url: tarUrl,                type: 'POST',                success:function(){                      //when the call is successful do something                }            }); });`
来源:https://www.icode9.com/content-1-573751.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
jQuery+SpringMVC中的复选框选择与传值实例
jQuery判断checkbox是否选中的3种方法
记得ajax中要带上AntiForgeryToken防止CSRF攻击
Flutter组件精讲【78】复选框CheckBox
Spring Security笔记:使用数据库进行用户认证(form login using database)
用AJAX开发智能Web应用程序之高级篇
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服