我有一个表单,当我总结加载表单的新部分,但会发生什么是页面加载并将我发送回我的页面顶部所以我必须一直向下滚动到所在的位置形式是。
有没有办法让我可以将页面保留在它所在的同一部分中,或者可能在我显示的子标题文本标题旁边加载它?
这是我显示的按钮:
echo $this->Form->submit("View Now");
但是我怎么能在下面这个子标题文本旁边加载它而不是回到页面顶部?
<h2><?php __("Information Results");?></h2>
谢谢!
答案 0 :(得分: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>
答案 1 :(得分:0)
Ajax是正确的方法,但您也可以使用锚点。例如,您可以通过以下方式进行表单操作:
<?php echo $this->Form->create(
'YourModel',
array(array('#'=>'subform')
);?>
然后在h2之上,你应该把:
<a name="subform"></a>
<h2><?php __("Information Results");?></h2>
提交表单时,它将准确定位到您想要的位置。但它是Ajax的替代品。我会用Ajax做的。
奖金(如果可以这样计算)你的逻辑是在同一个行动中。