0

このRun likeはまったく問題ありません。

// Save, set state to finalized and Print
        $('#btnDialogPrint').click(function () {

            if ($('#chkFinal').is(':checked')) {
                $(function () {
                    $("#PrintDialog").dialog('close');    
                });
            }
            else {
                $('#chkFinal').attr('checked', true); // Set finalized. This checkbox is not visible its like a hidden field
                $('#btnSubmit').click(); // Save
            }

        });

そして、これもうまくいきます:

window.location = '../Print/' + $('#SalesContractId').val();

しかし、私がそれらをまとめると、実行されるのは

window.location = '../Print/' + $('#SalesContractId').val();

完全なコード:

// Save, set state to finalized and Print
    $('#btnDialogPrint').click(function () {

        if ($('#chkFinal').is(':checked')) {

            $(function () {
                $("#PrintDialog").dialog('close');
                window.location = '../Print/' + $('#SalesContractId').val();    // Moves to ContractController Print
            });
        }
        else {
            $('#chkFinal').attr('checked', true); // Set finalized. This checkbox is not visible its like a hidden field
            $('#btnSubmit').click(); // Save
             window.location = '../Print/' + $('#SalesContractId').val();    // does not alow above code to execute 
        }

    });
4

1 に答える 1

4

$(function() { ... });クリック ハンドラーの内部を削除し、外側に配置します。

$(function() {
    $('#btnDialogPrint').click(function () {
        if ($('#chkFinal').is(':checked')) {
            $("#PrintDialog").dialog('close');
            window.location.href = '../Print/' + $('#SalesContractId').val();
        } else {
            $('#chkFinal').attr('checked', true);                
            $('#btnSubmit').click();
        }
    });
});

$(function() { ... });手段document.ready。_

これはあなたがいくつかを呼んでいるようだと言われています$('#btnSubmit').click();。これが実際に何らかのフォームの送信ボタンである場合 (その ID が示すように)、フォームが送信されると、ブラウザーがフォームの属性に#btnSubmit自動的にリダイレクトされることに注意してください。したがって、この場合、リダイレクトactionを呼び出すことはまったく意味がありません。window.location.href何を達成しようとしているのかを再考する必要があると思います。

于 2012-05-31T12:51:37.103 に答える