【发布时间】:2012-11-29 08:34:24
【问题描述】:
我创建了一个允许用户编辑/更正数据的表。该表填充得很好,并且为了使该表尽可能易于使用。我添加了下拉框,他们可以在需要更改任何信息时从中选择。
JS 文件是:
for(y=0;y<data.defect2.length; y++) {
myselectoptions += '<option value="'+data.defect_id[y]+'"' +
(data.defect_id[y]==data.defect[y] ? ' selected="selected"' : '') +
'>'+data.defect2[y]+'</option>';
}
if (data.isbn2 === null) {
$("#inventoryUpdate").append('<tr><td>No Records Found</td></tr>');
} else {
for(var x=0;x<data.isbn2.length;x++) {
$("#inventoryUpdate").append('<tr><td id="tableSKU">'+data.sku[x]+'</td><td id="tableISBN">'+data.isbn2[x]+
'</td><td id="tableQuantity">'+data.quantity[x]+
'</td><td><select id="tableDefect">'+myselectoptions+//'" selected="'+data.defect[x]+'">'+myselectoptions2+
'"</select></td><td><select id="tableSource">'+sourceoptions+
'"</select></td><td><select id="tableFeature">'+featureoptions+
'"</select></td><td><select id="tableWater">'+wateroptions+
'"</select></td><td><select id="tableLocation">'+locationoptions+
'"</select></td><td><input type="text" id="tableProcessDate" value="'+data.processDate[x]+
'"/></td><td><select id="tableBookType">'+bookoptions+
'"</select></td><td><select id="tableCreatedBy">'+useroptions+
'"</select></td><td><select id="tableModifiedBy">'+useroptions+
'"</select></td></tr>');
}
$("#inventoryUpdate").trigger("update");
}
这一切都有效,除了我不能让它默认为数据库查询中的选定项目。选择的项目是表中最后一个项目的值。 关于如何做到这一点或不可能做到这一点的任何想法?
【问题讨论】:
-
您确定在您的第一个
for循环中设置了默认值吗?您在输出中验证了吗? -
是的,下拉列表已填充,我现在需要将数据库中的值设置为选定值。
-
不,我特别询问您尝试在
for循环中设置的默认值是否正确执行。之后查看输出时,是否看到带有selected="selected"属性的<option>标记? -
no 没有选中的属性。
-
好的,如果我正确阅读了您的代码,那么您应该查看您的
for循环代码。那应该至少设置一个默认值。否则,无论您做什么,都不会显示默认值。
标签: jquery ajax jquery-plugins tablesorter