0

すでにdocument.getElementByIdを使用しましたが、機能しなくなりました。0.01€の値を取得したいのですが、取得できません。私はそれを自分の中に保存したいのですNSString *priceが、どうやって。HTMLコードは

<tr class="price">
<td>0,01</td>
<td>EUR</td>

私の考えは

NSString *price = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('price.td').innerText;"];
4

2 に答える 2

0

この場合のtagNameは「price.td」ではなく「td」ですが、実行document.getElementsByTagName('id')すると、ページ内のすべてのテーブルセルが取得されますが、これはおそらく必要なものではありません。

ページにjQueryがロードされている場合は、これを使用jQuery('.price td:first').text()して価格を取得できます。

jQueryがなくてもページを制御できる場合は、クラスを追加して(<td class="my-price">12.44</td>)、で取得できますdocument.getElementsByClassName('my-price')[0].innerHTML

ページを制御できず、jQueryがない場合は、「price」行を見つけて、を使用して最初のセルを取得する必要がありますdocument.getElementsByClassName('my-price')[0].childNodes[0].innerHTML

于 2012-07-28T20:43:02.030 に答える
0

また、よりクリーンで柔軟なアプローチは、SelectorsAPIを使用することです。

http://www.w3.org/TR/selectors-api/

document.querySelector('.price td:first').innerText
于 2012-07-28T21:01:31.100 に答える