diff --git a/src/base/single/text.pure.js b/src/base/single/text.pure.js new file mode 100644 index 000000000..0a86e73eb --- /dev/null +++ b/src/base/single/text.pure.js @@ -0,0 +1,43 @@ +/** + * 没有html标签的纯文本 + */ +!(function () { + BI.PureText = BI.inherit(BI.Widget, { + + props: { + tagName: null + }, + + render: function () { + var self = this, o = this.options; + var text = this._getShowText(); + if (BI.isKey(text)) { + this.setText(text); + } else if (BI.isKey(o.value)) { + this.setText(o.value); + } + }, + + _getShowText: function () { + var o = this.options; + var text = BI.isFunction(o.text) ? o.text() : o.text; + text = BI.isKey(text) ? text : o.value; + if (!BI.isKey(text)) { + return ""; + } + return BI.Text.formatText(text + ""); + }, + + setValue: function (value) { + this.options.value = value; + this.setText(value); + }, + + setText: function (text) { + this.options.text = BI.isNotNull(text) ? text : ""; + this.text.element.__textKeywordMarked__(this._getShowText()); + } + }); + BI.shortcut("bi.pure_text", BI.PureText); +}()); + diff --git a/src/core/widget.js b/src/core/widget.js index c5aeca499..6d8cb3929 100644 --- a/src/core/widget.js +++ b/src/core/widget.js @@ -610,7 +610,10 @@ if (o.element) { return BI.$(o.element); } - return BI.$(document.createElement(o.tagName)); + if (o.tagName) { + return BI.$(document.createElement(o.tagName)); + } + return BI.$(document.createDocumentFragment()); } return BI.$(widget); },