2013-03-14 1 views
0

У меня есть меню Select на моем сайте, внутри таблицы.Назначить опции для выбора ввода через javascript

<select name = "menu" id="menu" > 
    <option>A</option> 
    <option>B</option> 
    <option>C</option> 
</select> 

Я пытаюсь выполнить функцию JavaScript, чтобы добавить другое меню выбора с теми же параметрами в строке ниже таблицы.
у меня есть это:

function addRow(tableID) { 
    var table = document.getElementById(tableID); 
    var rowCount = table.rows.length; 
    var row = table.insertRow(rowCount); 

    var cell1 = row.insertCell(0); 
    var element1 = document.createElement("select"); 
    element1.id = "id"; 
    cell1.appendChild(element1); 
} 

Но я не знаю, где, чтобы добавить варианты здесь.

Я надеюсь, что кто-то может мне помочь.

+0

делает document.createElement («вариант») не работает? Я никогда не использовал createElement для параметров - новый параметр (значение, текст) - это то, что я использовал – mplungjan

ответ

1

Если вы хотите, чтобы скопировать его в точности так или иначе вы могли бы также использовать cloneNode() похожее на это:

function addRow(tableID) { 
    var table = document.getElementById(tableID); 
    var rowCount = table.rows.length; 
    var row = table.insertRow(rowCount); 

    var cell1 = row.insertCell(0); 

    // Get a handle to the original select 
    var orgSelect = document.getElementById("menu"); 

    // Make a clone, using true to indicate we also want to clone child nodes 
    var dupSelect = orgSelect.cloneNode(true); 

    // Change any attributes of the new select 
    dupSelect.id = "id"; 

    // Append the new select 
    cell1.appendChild(dupSelect); 
} 

DEMO - Использование cloneNode() дублировать select и options


Вы могли бы даже сделать это функция, которую вы звоните, пройдя все соответствующие параметры, похожее на это:

function createClone(elementId, newId, includeChildNodes){ 
    var original = document.getElementById(elementId); 
    var duplicate = original.cloneNode(includeChildNodes); 

    duplicate.id = newId; 

    return duplicate; 
} 

// Call it like this 
var clonedElement = createClone('menu', 'newMenu', true); 
1

Вы можете добавить параметры в элемент select, создав экземпляр нового объекта Option, а затем передав его методу add элемента select.

Например:

var opt = new Option("One", 1); 
element1.add(opt); 

 Смежные вопросы

  • Нет связанных вопросов^_^