簡體   English   中英

清爽 <DIV> 使用jQuery獲得新結果

[英]Refreshing <DIV> with new results using jQuery

我使用HTML表單,要求用戶在滾動菜單中選擇一些數據。 使用jQuery和PhP處理此數據,然后顯示另一個滾動菜單,具體取決於第一個菜單中選擇的項目。 第二個滾動菜單完全由php函數回顯。

我的第二個滾動菜單位於DIV中,名為“ camp”。 我的jQuery代碼如下所示結束:

 $('.camp').append(data);

問題在於,每次我在第一個滾動菜單中選擇某個內容時,就會再次顯示另一個第二個菜單。 程序會附加結果,這是正常的。 但是結果“匹配”,也就是說,額外菜單的結果與第一個菜單中的最后一個選擇一致。

因此,我嘗試用新數據替換舊數據,並更改了代碼:

$('.camp').replaceWith(data);

現在可以了,每次我在第一個菜單中進行更改時,都不會再出現第二個菜單。 但是現在我的問題是第二個滾動菜單中的數據仍然引用我的第一個選擇。

例如,如果我選擇項目“ 1”,則第二個菜單顯示“ 1”。 如果現在我將第一個項目更改為“ 2”,則第二個滾動菜單仍顯示“ 1”。 換句話說,它不會刷新。

這是我的HTML片段:

<?php
include 'functions.php';
propose_choix_BDD();
?>
<BR>
<div class="camp"></div>
<BR><BR><BR>

proposal_choix_BDD()顯示滾動菜單。 簡而言之,我想用在第一個滾動菜單中選擇的結果填充“ camp” div。 如果我寫這個:...

$('.camp').replaceWith(data);

...

第一次選擇時,它會正確顯示。 但是下一次,顯示的值不再更改。 不過,正如我成功測試的那樣,“數據”發生了變化:jQuery腳本。

我該怎么解決呢?

謝謝

您應該使用.html() ,而不是.replaceWith() .html()用新內容替換DIV的內容, .replaceWith()刪除整個DIV並將新內容放在其位置。 當您使用.replaceWith() ,將不再具有class="camp"的DIV,因此將來的使用將找不到任何可替代的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM