Как отключить кнопку

#jquery #grails

#jquery #grails

Вопрос:

У меня есть ajax-форма с кнопкой g:submitToRemote на ней. Я хотел бы включить кнопку, когда в форме установлен флажок. Я использую библиотеки jQuery и YUI javascript в своем проекте и пробовал с обоими, но до сих пор нет решения. После просмотра источника я увидел, что атрибут «id» отбрасывается для g:submitToRemote . Есть ли способ включить / отключить кнопку g: submitToRemote при любом другом событии или есть какой-либо обходной путь для этого?

Заранее спасибо ..!

Комментарии:

1. какой HTML-код генерирует g:submitToRemote ?

Ответ №1:

Используйте атрибут name. Grails также будет использовать это в качестве атрибута HTML id. Затем вы можете отключить / включить, используя метод $(‘#foo’) . Или вы могли бы сделать какой-нибудь селектор, например $(«input[name=’foo’]»).

Ответ №2:

     <!-- Whatever you have before your g:submitToRemote button-->
    <g:checkBox name="myCheckBox" />
    <g:submitToRemote name="myButton" />
    <!-- Whatever you have after your g:submitToRemote button-->

    <!-- Some jQuery to disable the button at the end of your document-->
    <g:javascript>
        $(document).ready(function() {
            $("#myCheckBox").change(function{
                // myButton is disabled if myCheckBox is checked
                if($("#myCheckBox").prop("checked")){
                    $("#myButton").attr("disabled", "disabled");
                }
                else{
                    $("#myButton").removeAttr("disabled");
                }
            });
        });
    </g:javascript>
</body>
</html>