2011-03-09 178 views
0

我有一個返回一堆選項標記的url。我能夠堅持,在我的$就成功:是否可以在ajax中的選擇標記中插入選項標記html

function(html) { 

} 

我可以直接把我的選擇標籤內的所有選項標籤排空我的選擇標記之後。 我的選擇標籤的名稱爲「SelectName」。
我在想,像這樣的東西:

$("select[name='selectName']").appendTo($(html)); // but this doesn't work 

我的HTML看起來像這樣(它只是選項標籤,它來自一個URL options.apsx:正在尋找

<option id="1">test1</option><option id="2">test2</option>... 

回答

2

我猜你爲append()

$("select[name='selectName']").append(html); 

使用appendTo試圖選擇列表添加到您的<options/>就是你想要發生的事情。

jsfiddle上的示例。

+0

哇它的工作原理謝謝!但它似乎也打了我的ajax錯誤:部分我有一個警告(「錯誤信息」);在成功之前:它會觸發警報,但仍會填充選擇。謝謝! – RetroCoder 2011-03-09 01:30:28

+0

沒問題,很高興我可以幫忙! – 2011-03-09 01:34:17

0

你可以把這樣的事情到你的成功的功能:

$("select[name='selectName']").empty(); 
$(html).appendTo("select[name='selectName']"); 

假設html是集合函數返回option標籤。

+0

ahhh ...我以錯誤的順序使用appendTo。 thx – RetroCoder 2011-03-09 01:31:31

+0

@Marc,yep:但是相信我,我們已經**所有**都做到了,或者說更遠,更渺茫,至少有一次...... = D – 2011-03-09 01:33:04

0

提出的解決方案:純JavaScript Ajax解決方案

//HTML 
<select id="category"> 
    <option value="0">--Please Select Category--</option> 
</select> 

//Javascript onload Event 
<script> 
window.onload = function(){ 
    var cat = document.getElementById('category');  
    loadCat(cat); 
}; 

//Function that will assign Category to Element 
function loadCat(element) 
    var e = element; 
    var xhr = new XMLHttpRequest(); 
    var url = 'load_categories.php'; 
    xhr.open('GET',url, true); 
    xhr.onreadystatechange = function(){ 
    if (xhr.readyState === 4 && xhr.status === 200) { 
     var r = JSON.parse(xhr.responseText); 
     for (var key in r) { 
      if (r.hasOwnProperty(key)) {     
       var tempNode = document.createElement("option");      
       tempNode.value = r[key];      
       var textnode = document.createTextNode(r[key]);      
       tempNode.appendChild(textnode);     
       e.appendChild(tempNode);  
      } 
     } 
    } 
    }; 
    xhr.send(); 
} 
</script> 

服務器必須返回一個基本的JSON對象。上面的例子將與服務器JSON響應工作:

//JSON RESPONSE FROM SERVER 
{"1":"Module","2":"Essential","3":"Security","4":"Improvement"} 

Insert Category by AJAX CALL

節點幸得以下面的鏈接:

https://www.w3schools.com/jsref/met_node_appendchild.asp