查找属性是否在脚本标记内

时间:2016-04-18 07:37:08

标签: javascript jquery html dom

我使用以下代码更新特定脚本标记属性值这是有效的,但是如果我放置一个不在脚本中的属性名称,它将创建一个具有此名称的新属性,如何为了避免这种情况,只要属性存在就更新它,否则什么都不做

这是代码

Content.find("#" + 'test-ui-boot').attr("src1", "test");

这是脚本,例如

<script id="test-ui-boot" src="/tcore.js"  data-aaa-ui-theme="bbb_val" src1="test" </script>

我使用JQuery解析器,如何在执行此代码之前检查属性是否存在

2 个答案:

答案 0 :(得分:1)

当属性不存在时,

attr()返回undefined

if(typeof Content.find("#" + 'test-ui-boot').attr("src1") !== 'undefined')
{
   Content.find("#" + 'test-ui-boot').attr("src1", "test");
}

答案 1 :(得分:1)

我不了解jQuery,但在纯JavaScript中,如果属性不存在,函数.getAttribute()将返回null。例如。你可以在这个页面上运行以下内容:

z = document.getElementsByClassName('question-hyperlink")[0]
>>> <a class="question-hyperlink" href="/questions/36687960/find-if-attribute-is-inside-the-script-tag">

z.getAttribute('href')
>>>> "/questions/36687960/find-if-attribute-is-inside-the-script-tag"

z.getAttribute('theAttributeThatDontExist')
>>>> null