2

下面是一个添加新下拉菜单框的 javascript 函数。它可以工作,但是当我name在选择名称和value选项值中输入一个时,它将不起作用。

function add() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = "<select> <option> Apple </option> <option> Orange </option> </select>";  
}


问题可能是什么?谢谢!

4

2 回答 2

0

如果使用双引号定义该字符串,则需要转义 innerHTML 字符串中的双引号:

newdiv.innerHTML = "<select name=\"name\"> <option value=\"value\"> Apple </option> <option> Orange </option> </select>";

或者,使用单引号来定义字符串,或 HTML 属性值(尽管 HTML 属性的标准是双引号)

于 2013-01-14T13:56:11.253 回答
0

您还需要将元素放置/附加到正文。这是您需要在函数中添加的内容:

document.body.appendChild(newdiv);

检查输出/使用情况

于 2013-01-14T13:47:03.673 回答