0

我想從代碼中動態填充的HTML選擇中以編程方式選擇一個選項。通過代碼選擇選項,其中選擇是動態填充的

的選擇充滿了對:

for(var i =0; i< valores.length ; i++) 
{ 
    var opcion= "<option value="+valores[i]['id_estado']+">"+valores[i]['nombre_estado']+"</option>"; 
    selectEstado.append(opcion);  
} 

,然後選擇一個選項:

$("#select_estado option[value='"+valores[0]['estado']+"']").attr('selected', true); 

但是當我做了選擇所處的價值= 0,任何想法?

+0

看到這個:https://stackoverflow.com/questions/5206070/programmatically-choose-item-in-select-drop-down – Francesco

+0

我的答案有幫助嗎?! –

+0

謝謝Francesco。我在我的Javascript代碼中使用它,我將選擇標記放在代碼中,因爲我知道必須標記的值。 Mehdi Bouzidi也是一個很好的答案。 –

回答

0

我不知道你是怎麼宣佈你valores陣列,讓我感到了自由 宣佈一個新的陣列,是以keys您在 問題使用。

所以,如果你宣佈你array以同樣的方式我沒有,那麼你不應該使用這個語法valores[i]['id_estado'],但你應該否則使用這一個valores[i].id_estado

,選擇一個option通過它value你應該使用簡單功能val()

最後,我支持我的回答這個問題:Set select option 'selected', by value

$(function(){ 
 

 
var valores={ 
 
0:{'id_estado':1,'nombre_estado':3}, 
 
1:{'id_estado':5,'nombre_estado':2}, 
 
2:{'id_estado':20,'nombre_estado':1} 
 
     }; 
 
     
 
var count=Object.keys(valores).length; 
 
for(var i =count-1; i>= 0 ; i--) 
 
{ 
 
    var opcion= "<option value="+valores[i].id_estado+">"+valores[i].nombre_estado+"</option>"; 
 
    $("#select_estado").append(opcion);  
 
} 
 

 
$("button").on("click",function(){ 
 
$("select").val(valores[1].id_estado); 
 
}); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="select_estado"></select> 
 
<button type="button" >Select</button>

希望它能幫助!

+0

謝謝!我很感激。 –

+0

@HéctorCapulínPatiñowelcome :)請點擊** Check Mark **點擊批准答案 –