25182
HTML

```

    <ul id="list">
        <li id="meta">hoge<span id="opt">huga</span></li>
        ...
    <ul>
    
```

というテーブルから"hoge"だけをjQueryを使用し取得した後、値を書き換えたいです。  
ご教授願えますでしょうか。
CC BY-SA 3.0
2016-05-25T14:47:04.627
25170
2016-05-26T02:07:31.610
15638
question
javascript html jquery
jQueryで指定された値を取得し書き換えたい
```

    $("#list #meta")[0].innerHTML="hara"+$("#list #meta #opt")[0].outerHTML
    
```

"hoge"から"hara"に書き換えなります
CC BY-SA 3.0
2016-05-26T00:55:58.723
25178
2016-05-26T00:55:58.723
14019
25170
answer
jQueryのAPIだけでテキストノードを書き換えることはできないみたいですが、`contents()`で、テキストノードを含めた子要素を取得し、テキストノードオブジェクトの`nodeValue`プロパティを弄れば、一応できそうです。

```

    $('#meta').contents()[0].nodeValue = "ABC";
    
```

絞り込むならこんな感じで。

```

    $('#meta').contents().filter(function (){ return this.nodeType === 3; })[0].nodeValue = 'ABC';
    
```
CC BY-SA 3.0
2016-05-26T02:07:31.610
25182
2016-05-26T02:07:31.610
8078
25170
answer