2011-12-28 25 views

Respuesta

40

Ni siquiera necesita necesariamente jQuery:

var select = document.getElementById("D1"), 
    opt = document.createElement("option"); 
opt.value = "value"; 
opt.textContent = "text to be displayed"; 
select.appendChild(opt); 

Example.

pero aquí está de todos modos con jQuery:

$("select#D1").append($("<option>") 
    .val("value") 
    .html("text to be displayed") 
); 

Example.

+0

Gracias! Funciona genial. :) –

+1

Creo que hay un error tipográfico en esta línea '.html (" texto que se mostrará ");' eliminar punto y coma al final. Debería ser '.html (" texto para mostrar ")'. – Sivakumar

+0

@Sivakumar Wow, casi 4 años de edad y pasó desapercibido ... arreglado. Gracias por traer eso! jajaja – Purag

2

Hay algunas maneras diferentes. Una de ellas es:

$("#D1").append("<option>Fred</option>"); 
11

Sin embargo, otra manera de hacerlo, usando select 's add method:

var select = $("#select")[0]; 

select.add(new Option("one", 1)); 
select.add(new Option("two", 2)); 
select.add(new Option("three", 3)); 

Ejemplo:http://jsfiddle.net/pc9Dz/

O de otra manera, mediante la asignación de valores directamente a la select 's options colección:

var select = $("#select")[0]; 

select.options[0] = new Option("one", 1); 
select.options[1] = new Option("two", 2); 
2

Aquí hay otra manera de eliminar opciones usando Javascript (similar a la respuesta de Andrew Whitaker) mediante las opciones de matriz:

var select = document.getElementById("D1"); 
select.options.length = 0;//remove all options 
Cuestiones relacionadas