1

私のコードは次のとおりです

function liReplace(str) {
    document.getElementById('srch').innerHTML = str;
}
<ul class="dropdown">
    <li id='srch'>
        <a href="#">All Categories</a>
        <ul class="sub_menu">
            <li>
                <a href="#">Gadgets</a>
                <ul>
                    <li onclick='liReplace("DVD")'><a href="#" >DVD</a></li>
                    <li><a href="#">XBOX</a></li>
                    <li><a href="#">Ps2</a></li>
                    <li><a href="#">Cellphone</a></li>
                </ul>
            </li>
            <li>
                <a href="#">Locations</a>
                <ul>
                    <li><a href="#">Indoor</a></li>
                    <li><a href="#">Outdoor</a></li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

すべてのカテゴリをクリックしたものに変更したかった

見る <li onclick='liReplace("DVD")'><a href="#" >DVD</a></li>

私はinnerhtmlを変更するためにjavascript関数を使用しましたが、子li全体が後になりました。

最初のLiテキストの一部のみを取得する方法についてのヘルプ。

4

2 に答える 2

5

<a>これでうまくいくはずです-上部の要素内のテキストを置き換えることができます<li>

function liReplace(str) {
    $('#srch > a').text(str);
}

>、直接の子のみが変更されることを保証します。

于 2012-09-27T08:10:40.227 に答える
1

">"を使用して子を強制します

function liReplace(txt) {
    $("#srch > a").html(txt);
}
于 2012-09-27T08:13:04.890 に答える