2017-01-06 13 views

答えて

0

問題を引き起こしている可能性があるのはAJAXです。返されたデータの末尾にある空白を削除するために応答をtrim()する必要があります。以下を試してください。

success: function(data) { 
    var response = data.trim(), select = $("#test"), options = ''; 
    select.empty();  
    for(var i=0;i<response.length; i++) 
    { 
    options += "<option value='"+response[i].id+"'>"+ response[i].name +"</option>"; 
    } 

    select.append(options).val(value); 
} 
2

1を高く評価している)あなたはオプションを追加した後.val()使用することができます。

select.append(options); 
select.val(value); 

2) するか、オプションのHTML文字列を構築しながら、同じ値を持つオプションに選択した属性を追加します。

options += "<option value='"+data[i].id+"' "+(data[i].id == value ? "selected" : "") +">"+ data[i].name +"</option>"; 
+0

私はこれを試しましたが、うまくいきませんでした – Sally

+0

どちらがうまくいきませんでしたか? –

+0

どちらもうまくいきませんでしたが、なぜ – Sally

0

問題が解決しました。

問題は、返される値は、だから私は

おかげで、すべての「」で「+」に置き換え +としてURLから取得された空間を、持っているということでした!

+0

これはなぜ私が提案したのでしょう.trim()) - スペースを削除する – gavgrif

関連する問題