如何在javascript中有条件地呈现HTML

时间:2015-03-11 13:25:57

标签: javascript html

var template = '';
template = template + '<div class="form-group col-lg-12">';
template = template + '<label  class="control-label"' + '' + object.required == true ? ' required' : '' + '>';

在上面一行obj.required = true。所以, true == true

因此,模板最终应该有以下html

<div class="form-group col-lg-12"><label  class="control-label required">

但它只返回

">"

我相信我的html嵌入代码不正确。 我很难找到错误但无法找到。

你能找到并建议吗?

2 个答案:

答案 0 :(得分:0)

使用ng-attr根据条件

呈现属性

HTML

var template = '';
template = template + '<div class="form-group col-lg-12">';
template = template + '<label  class="control-label" ng-attr-required="' + object.required + '">';

或者只使用ng-required="expression"

var template = '';
template = template + '<div class="form-group col-lg-12">';
template = template + '<label  class="control-label" ng-required="' + object.required + '">';

答案 1 :(得分:0)

最简单,最易读的答案是使用if块:

&#13;
&#13;
var object = {
  required: true
};
var template = '';

template += '<div class="form-group col-lg-12">';
template += '<label class="control-label"' + (object.required  ? ' required>' : '>');

document.body.innerText = template;
&#13;
&#13;
&#13;