Javascript 更改动态生成的下拉列表的选定值
我在JSP页面中生成了一个动态下拉列表,如下所示:Javascript 更改动态生成的下拉列表的选定值,javascript,dom,Javascript,Dom,我在JSP页面中生成了一个动态下拉列表,如下所示: <table BORDER=4 BORDERCOLOR=ORANGE width="300px"> <tr> <td>Model:</td> <td><select name="model" id="model"> <c:forEach items="${model_list}" var="item"&g
<table BORDER=4 BORDERCOLOR=ORANGE width="300px">
<tr>
<td>Model:</td>
<td><select name="model" id="model">
<c:forEach items="${model_list}" var="item">
<option value="${item.modelId}">${item.modelName}</option>
</c:forEach>
</select></td>
</tr>
</table>
型号:
${item.modelName}
我只想根据从这里获得的另一个值更改这些下拉列表的选定值:
<table BORDER=4 BORDERCOLOR=ORANGE width="120px" id="product_table">
<c:forEach items="${product_list}" var="car">
<tr>
<td><INPUT type="checkbox" name="chk_group" value="${car.carId}" /></td>
<td><c:out value="${car.carId}" /></td>
<td><c:out value="${car.model.modelName}" /></td>
<td><c:out value="${car.model.modelId}" /></td>
</table>
下面是脚本:
function findRowNumber() {
var rowIdx;
var rowData = new Array();
var table = document.getElementById('product_table');
var rows = table.getElementsByTagName('tr');
var selectedRow;
for ( var i = 0; i < rows.length; i++) {
rows[i].onclick = function() {
rowIdx = this.rowIndex;
selectedRow = rows[rowIdx];
document.getElementById('model').value = selectedRow.cells[3].innerHTML;
}
}
}
函数fin溺水数(){
var-rowIdx;
var rowData=新数组();
var table=document.getElementById('product_table');
var rows=table.getElementsByTagName('tr');
var selectedRow;
对于(变量i=0;i
注意:
selectedRow.cells[3]。innerHTML
返回3,但值不变。我在HTML中没有看到id为model
的任何内容。您的意思是名称为model
的输入也将其作为id吗
我还注意到在第二个表中没有结尾
不要使用var rowData=new Array()代码>使用文字符号:var rowData=[]代码>
在添加了id之后,添加了几个
s,这对我来说效果很好:
请注意,在调试JavaScript问题时,呈现的HTML输出将非常有用。当出现DOM操作问题时,我们通常不关心您的服务器在做什么。您在选择标记中没有指定id,名称不是id。我添加了id,但没有任何更改!只是想澄清一下,你想点击列表中的某个内容,然后你想更新下拉列表,在下拉列表中选择该选项,并根据点击的内容更新其值?我添加了id,但没有任何更改