0

CHtml::ajaxLinkブラウザの JavaScript が無効になっている場合、フォームは従来の POST メソッドとして送信できますか?

または、この目的のために、イベントsubmitButtonでスニペット'return false;'JavaScript を使用する必要がありますか?submit

私の希望は、LinkフォームデータをAjax従来のPost方法(PostブラウザのJavaScriptが無効になっている場合の従来の方法)として送信することです。方法はありますか?

4

1 に答える 1

2

一種のフォールバックを作成できます。

<!-- at start Hide the ajax link -->
<style type="text/css">
    #ajax-form {display: none;}
</style>

次に、ajaxフォームを含むdivを配置します。

<div id="ajax-form">
    <?php  //Ajax code ?>
</div>

そして、javascriptが有効になっていない場合に実行されるコード:

<noscript>
    <?php echo
    CHtml::beginForm('', 'post') . 
    CHtml::hiddenField('field', $model->id) .
    CHtml::submitButton('button') . 
    CHtml::endForm(); 
    ?>
</noscript>

そして最後に、javascriptが有効になっている場合にajaxdivを表示するjavascriptを含めます。

<script type="text/javascript">
    document.write('<style type="text/css">#ajax-form {display: inline;}</style>');
</script>
于 2013-03-11T13:10:16.773 に答える