使用JQuery的簡單AJAX測試頁面。 顯示頁面最初顯示按鈕(BUTTON1)。點擊後,它將通過script.js運行react.php。 react.php將通過span元素用BUTTON2替換BUTTON1。所有這些工作。AJAX強制頁面刷新(但不應該)
這是出錯的地方。點擊BUTTON2應該通過script2.js運行react2.php。 react2.php應該用文本「SUCCESS」代替BUTTON2。不過,當點擊BUTTON2時,頁面會刷新(並再次顯示BUTTON1)。
當initial.php頁面上的按鈕類從button1更改爲button2時,button2被成功替換爲react2.php中的字符串。我無法理解這一點。
如何防止刷新,以便頁面在span元素中顯示「SUCCESS」? 在此先感謝!
beginning.php
<html>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
<script type="text/javascript" src="script2.js"></script>
<?php
echo "<span class='span_display'>
<a href='' id='button1' class='button1'>BUTTON1</a>
</span>";
?>
</html>
的script.js
$(function() {
$(".button1").click(function() {
$.ajax({
url: "react.php",
cache: false,
success: function(html) {
$(".span_display").html(html);
}
});
return false;
});
});
script2.js
...(all the same except)
url: "react2.php",
react.php
<?php
echo "<a href='' id='button2' class='like_button2'>BUTTON2</a> ";
?>
react2.php
<?php
echo "SUCCESS";
?>
因爲您的腳本無法識別button2。你必須把它放在你的標記中(隱藏它,然後在你點擊第一個按鈕後顯示它),或者你必須在react.php中輸出你的button2點擊處理程序。將盡管與第一個選項。我不把它作爲答案發布,因爲我不是100%確定第二個選項,我沒有時間現在就測試它。 – lexith
感謝您的回答。我很抱歉,你能否用一些提示或例子來說明如何把這個原則變成代碼?你的意思是:[鏈接](http://www.w3schools.com/jquery/jquery_hide_show.asp)?初學者在這裏。 –
由於您似乎是SO上的新用戶,我想鼓勵您[參觀](http://stackoverflow.com/about)或閱讀[幫助頁面](http:// stackoverflow。 com/help)如何(以及爲什麼)接受答案。 ;-)請不要使用w3schools作爲資源,而是使用[官方文檔](api.jquery.com/)。 – nietonfir