我在html中有两列带有以下标记:
第1栏:
<div id="uni1Query">
<p id="uni1Query1Result" data-sgvizler-chart="sText" data-sgvizler-loglevel="2"><div><p>54.7</p></div></p>
<p id="uni1Query2Result" data-sgvizler-chart="sText" data-sgvizler-loglevel="2"><div><p>34.7</p></div></p>
</div>
第2栏:
<div id="uni2Query">
<p id="uni2Query1Result" data-sgvizler-chart="sText" data-sgvizler-loglevel="2"><div><p>54.7</p></div></p>
<p id="uni1Query2Result" data-sgvizler-chart="sText" data-sgvizler-loglevel="2"><div><p>34.7</p></div></p>
</div>
我想要做的是从第1列获取值并将它们与第2列中的相同值进行比较。
所以我想要的是将uni1Query1Result与uni2Query1Result和uni2Query1Result的值与un21Query2Result进行比较等等。我有第三列,结果应该是。
这样做的最佳方式是什么?
我尝试了以下内容:
r1 = parseInt($("#uni1Query1Result p").val());
console.log(r1);
r2 = parseInt($("#uni2Query1Result p").val());
console.log(r2);
r3 = (r1 - r2);
alert(r3);
但这会导致NaN。
答案 0 :(得分:1)
您无法在<p>
标记中嵌套块级元素,浏览器将关闭父<p>
标记。在Chrome中检查您的控制台会向您显示。
此外,您应该使用html()
来查找标记的内部值,并使用parseFloat
来查找浮点数(不是整数)
parseFloat($("#uni1Query1Result p").html())
答案 1 :(得分:1)
尝试这种方法来比较两个div中的First值
$('#uni1Query > p:eq(0) div p').text() == $('#uni2Query > p:eq(0) div p').text()