2

我正在构建一个动态页面,在该页面上根据输入生成控件。因此计划使用 javascript 创建 HTML 控件。

我担心我是否应该使用 DOM 元素或直接 HTML 作为字符串。

使用 DOM 元素。

var div = document.createElement("div");
div.setAttribute("class","outer-div");
var input = document.createElement("input");
input.setAttriute("id","1234");
input.setAttriute("value","xyz");
div.appendChild(input);
document.body.appendChild(div);

使用 HTML 字符串

var html = "<div class='outer-div'><input id='1234' value='xyz' /></div>";
$("body").html(html);

请建议从两者中选择。

4

1 回答 1

1

我个人更喜欢像这样使用 jQuery 创建 DOM 元素:

var $input = $('<input>')
    .attr("id", "1234")
    .val("xyz");

var $div = $('<div>')
    .addClass('outer-div')
    .append($input)
    .appendTo(document.body);

或者使用一个或多个 DOM 模板并在必要时插入/删除您的自定义。但是,我认为这个问题会导致有偏见的答案和辩论......

于 2013-06-03T04:53:10.280 回答