0

次のフォーム宣言があります。

<div class="edit-dialog span-10" style="display:none;">
  <div class="edit-message span-10" style="margin-bottom:30px;">
    <span>Editing: <a style="text-decoration:none"></a></span>
  </div>
  <?php
    echo $this->Form->create('Voicenote', array('action' => 'edit'));
    echo $this->Form->input('title', array(
      'div' => false,
      'class' => 'input-text recorder',
      'label' => array(
        'class' => 'inlined',
        'text' => ''
      ),
      'id' => 'VoicenoteEditTitle',
      'placeholder' => 'Title',
      'style' => 'margin-bottom:10px;',
      'onsubmit' => 'return false;'
    ));

    echo $this->Form->input('tags', array(
      'div' => false,
      'class' => 'input-text recorder',
      'id' => 'VoicenoteEditTags',
      'label' => false, 
      'placeholder' => 'Tags',
      'onsubmit' => 'return false;'
    ));
    echo $this->Form->button('Cancel', array(
      'class' => 'button medium blue',
      'id' => 'cancel-edit',
      'style' => 'float:left;margin-top:50px;'
    ));
    echo $this->Form->submit('Save', array(
      'class' => 'button medium blue',
      'id' => 'save-edit',
      'style' => 'float:right;margin-top:50px;'
    ));
  ?> 
  <input type="hidden" id="edit-container-index" value="">
</div>

タグを出力していません<form></form>。アプリ全体でこの方法でフォームを宣言しました$this->Form->end()が、どちらも機能しません。手がかりはありますか?

編集:タグを明示的に宣言しても、<form></form>タグは出力されません

編集 2: 私が気づいている本当に奇妙なことがあります。問題のあるページに 4 つのフォームがあります。問題のある要素のレンダリングを削除すると、別のフォームがレンダリングされず、その直後のフォームがレンダリングされません。

4

2 に答える 2

4

送信ボタンがあります。ctp ファイルの送信ボタンの後に end() を追加するだけです。

<?php 
echo $this->Form->create('users');
echo $this->Form->input('username');
echo $this->Form->input('password');
echo $this->Form->submit('login');
echo $this->Form->end();
?>
于 2011-10-08T20:27:11.170 に答える
0

こんにちは、最後のエコーを次のように変更すると思います

echo $this->Form->end( array(
  'label'=>'Save',
  'class' => 'button medium blue',
  'id' => 'save-edit',
  'style' => 'float:right;margin-top:50px;'
));

それは動作するはずです

于 2011-10-08T10:00:04.100 に答える