使用 javascript 在 html 中创建动态元素
creating dynamic element in html using javascript
正在使用
动态创建元素
var eType = "div";
document.createElement(eType);
是否可以验证提供的字符串是等效的 html 标记。
如果我提供类似 var eType = "idv";
的内容,它必须发送错误。
检查该问题的任何解决方法。
var validTags = ['div'];
function is_tag(tag) {
return validTags.indexOf(tag.trim().toLowerCase()) > -1;
}
是这样的吗?
//Check there if it's an html tag:
if (eType == "div"){
document.createElement(eType);
}
function isValid(input) {
return document.createElement(input).toString() != "[object HTMLUnknownElement]";
}
alert(isValid("div"));
没有足够的代表来标记,但重复来源:Verify whether a string is a valid HTML tag name
您可以编写一个函数来包含所有有效的 tagName,然后查看是否 [object HTMLUnknownElement]
function isValidHTMLTag(tagName, allowObsolete) { // use `-1` as second parameter to completely bypass allowObsolete check
var obsolete = ['acronym', 'applet', 'basefont', 'bgsound', 'big', 'blink', 'center', 'dir', 'font', 'frame', 'frameset', 'hgroup', 'isindex', 'listing', 'marquee', 'multicol', 'nextid', 'nobr', 'noembed', 'noframes', 'plaintext', 'spacer', 'strike', 'tt', 'xmp'];
return tagName.match(/[^a-zA-Z0-9]/) ? !1 : -1 !== allowObsolete && -1 !== obsolete.indexOf(tagName) ? allowObsolete || !1 : "[object HTMLUnknownElement]" !== Object.prototype.toString.call(document.createElement(tagName));
}
正在使用
动态创建元素var eType = "div";
document.createElement(eType);
是否可以验证提供的字符串是等效的 html 标记。
如果我提供类似 var eType = "idv";
的内容,它必须发送错误。
检查该问题的任何解决方法。
var validTags = ['div'];
function is_tag(tag) {
return validTags.indexOf(tag.trim().toLowerCase()) > -1;
}
是这样的吗?
//Check there if it's an html tag:
if (eType == "div"){
document.createElement(eType);
}
function isValid(input) {
return document.createElement(input).toString() != "[object HTMLUnknownElement]";
}
alert(isValid("div"));
没有足够的代表来标记,但重复来源:Verify whether a string is a valid HTML tag name
您可以编写一个函数来包含所有有效的 tagName,然后查看是否 [object HTMLUnknownElement]
function isValidHTMLTag(tagName, allowObsolete) { // use `-1` as second parameter to completely bypass allowObsolete check
var obsolete = ['acronym', 'applet', 'basefont', 'bgsound', 'big', 'blink', 'center', 'dir', 'font', 'frame', 'frameset', 'hgroup', 'isindex', 'listing', 'marquee', 'multicol', 'nextid', 'nobr', 'noembed', 'noframes', 'plaintext', 'spacer', 'strike', 'tt', 'xmp'];
return tagName.match(/[^a-zA-Z0-9]/) ? !1 : -1 !== allowObsolete && -1 !== obsolete.indexOf(tagName) ? allowObsolete || !1 : "[object HTMLUnknownElement]" !== Object.prototype.toString.call(document.createElement(tagName));
}