0

フレキシグリッドを使用して、フォームの値を使用して結果を表示しようとしています。そのため、人がフォームをクリックしたときに、テーブルを初期化するためにボタンをクリックしたのが初めての場合は、フレキシグリッド関数をロードする必要があります。次に、誰かがフォームの値を調整してボタンをもう一度クリックすると、新しいフォームの値でフレキシグリッド テーブルがリロードされます。1つの関数でこれを行うにはどうすればよいですか? 現在、ページの読み込み時に flexigrid コードを実行しています。ボタンをクリックすると、次のように実行されます。

<script type="text/javascript">
$(function() {

$('#RunReport').click( function() {
    var report_name = $('input[name=report-name]').val();
    var report_cell = $('input[name=report-cell]').val();
    var query_url = encodeURI('name=' + report_name + '&cell=' + report_cell);
    $('#reporting').flexOptions({ url: '/report.php?' + query_url }).flexReload();
});

});
</script>

しかし、両方の関数でそれを使用する代わりに、フレキシグリッドが既に初期化されている場合にのみリロードを実行する 1 つの関数ですべてを実行したかったのです。これが理にかなっていることを願っていますが、これはまだ新しいものです。

4

1 に答える 1

3
<script type="text/javascript">

function runreport() {
    $('#RunReport').click( function() {
        var report_name = $('input[name=report-name]').val();
        var report_cell = $('input[name=report-cell]').val();
        var query_url = encodeURI('name=' + report_name + '&cell=' + report_cell);
        $('#reporting').flexOptions({ url: '/report.php?' + query_url }).flexReload();
    });
}

$(document).ready(function() {
    runreport();

    $('#RunReport').click( function() {
        runreport();
    });
});
</script>
于 2011-01-09T03:46:31.310 に答える