是否可以使用“setAttribute”设置超链接的文本或内部文本



我正在尝试将我的描述性JSON对象动态转换为HTML。这不是一件容易的事,但由于它仅用于一个小项目和一个小团队,它适合我们的需求。

这意味着,JSON 对象可能看起来像

'element': {
            'href': '#03',
            'text': 'link',
            'myUniqueTag' : 'a'
        }

这意味着我可以使用myUniqueTag并理解我正在处理a类型。这工作正常。

我遇到的问题是设置文本的值,即

<a href="blah">How do I set this bit</a>

这是我尝试过的

one.text = "Hello world";                           //works
two.innerText = "Hello world";                      //works
three.setAttribute("text", "Hello world");          //fails
four.setAttribute("innerText", "Hello world");      //fails

吉斯菲德尔

对于我的情况,我必须使用 setAttributes。我的问题是,我是否遗漏了某些内容,或者无法通过setAttribute()设置文本

请注意,我只使用vanilla JavaScript(没有JQuery或框架(。

当然,您可以使用setAttribute来设置文本,但是您需要精确设置的女巫属性。在您的示例中,"text"和"innerText"不是html属性。

例如:

.JS:

var b = document.createElement('button'); 
b.setAttribute('content', 'test content'); 
b.setAttribute('class', 'btn'); 
b.innerHTML = 'test value';
var wrapper = document.getElementById("divWrapper");
wrapper.appendChild(b);

在 DOM 中看起来像这样:

<div id="divWrapper">
    <button content="test content" class="btn">test value</button>
</div>

最新更新