微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 从grails控制器获取复选框值

我有一个grails项目,我需要选择要删除的字段,当我点击“删除”时,我需要一个删除所有选定项目的功能

HTML代码

<form name="bookForm" action="list" method="post">
    ....
    <g:link controller="book" action="delete">Delete</g:link>
    ....
    ....
    <g:checkBox id="select_all" name="select_all" value="" onclick="selectAll();" />
    ....
    <g:each in="${bookList}" status="i" var="bookInstance">
        <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
            <td><g:checkBox id="${bookInstance.id}" name="delete_checkBox" value="" /></td>
        </tr>
    </g:each>
    ....
</form>

javascript代码

<script type="text/javascript">
    function selectAll(){//this function is used to check or uncheck all checkBoxes
        var select = document.getElementById("select_all");
        var checkBoxes = document.forms['bookForm'].elements['delete_checkBox'];
        if (select.checked){
            for (i = 0; i < checkBoxes.length; i++) checkBoxes[i].checked = true;
        }else{
            for (i = 0; i < checkBoxes.length; i++) checkBoxes[i].checked = false;
        }
    }//this function works fine
</script>

问题:

我需要操作来检查列表gsp中的所有复选框,如果选中它们,请取其ID并按ID删除记录.

我可以通过groovy或javascript做到这一点吗?

解决方法:

重写您的复选框,如:

<g:checkBox id="delete_checkBox" name="delete_checkBox" value="${bookInstance.id}" />

因此,当您提交时,您将在params地图中获得一组名为_delete_checkBox或delete_checkBox的ID.要了解您的收获,您可以尝试在行动中打印您的参数.

println params

您可以使用params [‘nameOfTheAttribute’]获取所需的数组.
获得id数组后,迭代它并将它们全部删除.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐