从列表中创建一个选择并将其放在表中

时间:2017-04-18 18:47:44

标签: javascript java jquery spring

我正在使用Java和Spring编写Web应用程序。

从控制器中,我向视图发送一个名为+

的列表
materials

@RequestMapping(value = "/advanced") public String advancedCalculation(Model model) { model.addAttribute("materials", materialService.getMaterials()); model.addAttribute("calcForm", new CalculationForm()); return "advanced"; } 是名为materials的对象列表:

MaterialDTO

从客户端我必须使用按钮创建表来向这些表添加行。类似的东西:

public class MaterialDTO extends DTO {

    /* Constructors */
    public MaterialDTO()                        { super();         }
    public MaterialDTO(Integer id, String name) { super(id, name); }

}

所有表的选择器都是相同的,所以我想从<table id="1"> <thead> ... 2 columns ... </thead> <tbody> <tr> <td>HERE I NEED THE SELECTOR</td> <td>column 2</td> </tr> </tbody> </table> . . . <table id=N> <thead> ... M columns ... </thead> <tbody> <tr> <td>HERE I NEED THE SELECTOR</td> <td>column 2</td> ... <td>column M</td> </tr> </tbody> </table> 列表创建一次,并在需要的地方使用它。这最后我遇到了问题...

materials

当我尝试将其添加为HTML并且失败时

/* Making select */

var materialsList = new Array();
var sel = $('<select>');

<c:forEach items="${materials}" var="material">
    var material = new Object();
    material.id = '${material.id}';
    material.name = '${material.name}';
    materialsList.push(material);
</c:forEach>

$(materialsList).each(function() {
    sel.append($('<option>').attr('value', this.id).text(this.name));
});

而不是选择器出现“[object Object]”。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

试试这个:

s.x = 4

这将修复您的选择不显示您的选项。记住.html()只返回innerHTML。外部html x不会随之显示。你必须先包装。

替代:

unknown