2012-07-20 55 views
3

我有一個表單,我想要發佈到同一頁面。表單操作包含頁面上包含該元素的片段標識符 - 我想要的是發佈數據,然後在同一點上重新加載相同的頁面,以便用戶無需向下滾動。窗體動作屬性中的片段標識符

例如index.php文件:

​​

但是我有幾個問題 - 首先,我不知道這是很好的做法,並不能找到太多什麼好的做法與片段標識符。

其次,其他一些人表示,有時表單「跳到頂部」,當他們點擊提交。我還沒有能夠重現這一點,但似乎很明顯,不是發佈數據,而是瀏覽器使用片段標識符操作。

任何人都可以提出一個更好的方法來做到這一點?

回答

1

使用header()函數和標識符在表單提交後重定向用戶。

<div> 
    some very long content that pushes my form down the page 
</div> 
/*Use header() to redirect the person on the #point*/ 
<?php 
//form data goes here, if it passes everything then use 
header('Location:index.php#myDiv'); 
exit; 
?> 
<div id="myDiv"> 
    <form action="index.php" method="post"> 
    <input name="abc" value="123"/> 
    <input type="submit" value="submit"/> 
    </form> 
</div>