如何使用javascript来替换这个html?

时间:2017-06-30 20:11:18

标签: javascript html

我想在这里使用javascript,而不是jquery。如何替换此html文本?

如何用5替换1?我尝试了这个,但它没有用。

127.0.0.1
document.getElementsByClassName('hello').innerHtml=5

3 个答案:

答案 0 :(得分:2)

document.querySelector( '.hello a' ).innerHTML = 5;

document.getElementsByClassName()会为您提供包含<li>元素的实时HTMLCollection。您需要使用document.querySelector()选择<a>

如果只有一个<a>匹配该选择器,则上述解决方案才有效。否则你必须使用document.querySelectorAll()并更改所有元素或选择正确的元素。

答案 1 :(得分:0)

使用,

document.querySelector(".hello a").innerHTML = 5;

问题是您选择了<li>元素而不是其中的<a>

答案 2 :(得分:0)

由于您不想使用jQuery,因此需要考虑以下JS函数:

function updateAnchorText(className, anchorText)
{
    // NOTE: you could make 'anchorText' an integer value that is incremented during each update and set using .ToString()
    var liElems = null;
    var aElems = null;
    var liElem = null;
    var aElem = null;
    var i,j;

    try
    {
        liElems=document.getElementsByClassName(className);

        if(liElems!=null)
        {
            for(i=0;i<liElems.length;i++)
            {
                liElem = liElems[i];
                aElems=liElem.getElementsByTagName("a");

                if(aElems!=null) 
                {
                    for(j=0;j<aElems.length;j++)
                    {
                        aElem = aElems[j];
                        aElem.innerHTML=anchorText;
                    }
                }
            }
        }
    }
    catch(e)
    {
        alert("Error:  " + e.Message);
    }
    finally
    {

    }

    return;
}

使用updateAnchorText调用它(&#34;你好&#34;,&#34; 5&#34;);