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 是“td”而不是“price.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,您将必须找到“价格”行,然后使用document.getElementsByClassName('my-price')[0].childNodes[0].innerHTML.

于 2012-07-28T20:43:02.030 回答
0

此外,更简洁、更灵活的方法是使用 Selectors API:

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

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