簡體   English   中英

使用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"));

沒有足夠的rep to flag,但是復制源: 驗證字符串是否是有效的HTML標記名稱

您可以編寫一個函數來包含所有有效的tagNames,然后查看[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));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM