0

Sumbitがフォームの新しいセクションをロードするフォームがありますが、ページがロードされてページの先頭に戻るため、フォームがある場所までスクロールして戻る必要があります。

ページを同じセクションに保持する方法はありますか、または表示するサブヘッダーテキストタイトルの横にページをロードする方法はありますか?

これは私が示しているボタンです:

echo $this->Form->submit("View Now");

しかし、ページの上部に戻るのではなく、下のこのサブヘッダーテキストの横にこれをロードするにはどうすればよいですか?

<h2><?php __("Information Results");?></h2>

ありがとうございました!

4

2 に答える 2

0

Ajax が適切な方法ですが、アンカーを使用することもできます。たとえば、フォーム アクションを次のようにすることができます。

<?php echo $this->Form->create(
                               'YourModel', 
                               array(array('#'=>'subform')    
);?>

次に、h2 の上に次のように記述します。

<a name="subform"></a> 
<h2><?php __("Information Results");?></h2>

フォームを送信すると、希望する場所に正確に配置されます。しかし、これは Ajax の代替手段です。Ajaxでやります。

ボーナス (そのようにカウントできる場合) は、ロジックが同じアクションにあります。

于 2012-08-30T07:40:59.597 に答える
0

このコードを試してください:

echo $this->Form->submit("View Now",array('id'=>'contact_btn'));
<div id='result'><?php __("Information Results");?></div>

<script>
$.ajax({data:$("#contact_btn").closest("form").serialize(),
    dataType:"html",
    success:function (data, textStatus)
    {$("#result").html(data);},
    type:"post",
    url:"\/yourproject\/controller\/action"
});
</script>
于 2012-08-30T05:07:35.537 に答える