Jak*_*ake 9 html javascript forms
我发现在Javascript中添加表单的输入非常简单,但由于某种原因,添加带选项的选择输入无效.选项出现在下拉列表之外.
这是我在jsfiddle中的代码:http://jsfiddle.net/LNVTQ/
这是我的代码内联:
var choices=[];
choices[0]="one";
choices[1]="two";
function addInput(divName){
var newDiv=document.createElement('div');
newDiv.innerHTML="<select>";
for(i=0; i<choices.length; i=i+1){
newDiv.innerHTML=newDiv.innerHTML+"<option value='"+choices[i]+"'>"+choices[i]+"</option>";
}
newDiv.innerHTML=newDiv.innerHTML+"</select>";
document.getElementById(divName).appendChild(newDiv);
}
Run Code Online (Sandbox Code Playgroud)
和HTML:
<form class="new" method="post" action="/jobs">
<div id="dynamicInput"></div>
<input type="button" value="Add" onclick="addInput('dynamicInput');" />
<input type="button" value="Save" />
</form>
Run Code Online (Sandbox Code Playgroud)
我会接受使用jQuery或只是vanilla Javascript的答案.
Cha*_*ndu 19
var choices = ["one", "two"];
function addInput(divName) {
var newDiv = document.createElement('div');
var selectHTML = "";
selectHTML="<select>";
for(i = 0; i < choices.length; i = i + 1) {
selectHTML += "<option value='" + choices[i] + "'>" + choices[i] + "</option>";
}
selectHTML += "</select>";
newDiv.innerHTML = selectHTML;
document.getElementById(divName).appendChild(newDiv);
}Run Code Online (Sandbox Code Playgroud)
<form class="new" method="post" action="/jobs">
<div id="dynamicInput"></div>
<input type="button" value="Add" onclick="addInput('dynamicInput');" />
<input type="button" value="Save" />
</form>Run Code Online (Sandbox Code Playgroud)
var choices = ["one", "two"];
function addInput(divName) {
var select = $("<select/>")
$.each(choices, function(a, b) {
select.append($("<option/>").attr("value", b).text(b));
});
$("#" + divName).append(select);
}Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<form class="new" method="post" action="/jobs">
<div id="dynamicInput"></div>
<input type="button" value="Add" onclick="addInput('dynamicInput');" />
<input type="button" value="Save" />
</form>Run Code Online (Sandbox Code Playgroud)
每次设置innerHTML属性时,浏览器都会创建插入内容的DOM元素.
当您添加<select>到innerHTML时,您的浏览器很可能已添加</select>为使其成为有效的html.
然后当你检索它以添加选项时,它会回来<select></select>.
尝试构建整个html字符串以插入普通变量并插入一次.
| 归档时间: |
|
| 查看次数: |
52382 次 |
| 最近记录: |