我有以下XML:
<beanRepresentation>
<beanRepId>222</beanRepId>
<beanRepName>Bean 1</beanRepName>
<topY>10</topY>
<leftX>10</leftX>
<height>10</height>
<width>10</width>
</beanRepresentation>
此行获取topY的值:
document.write(x[i].getElementsByTagName("topY")[0].childNodes[0].nodeValue);
这会给我一个10,但我想要一个20,我试着
document.write(x[i].getElementsByTagName("topY")[0].childNodes[0].nodeValue +10);
但它不起作用,它给了我1010而不是。我该怎么做才能操纵这个号码?
答案 0 :(得分:1)
nodeValue
返回的值是一个字符串(请参阅,例如MDN on this),因此您正在执行字符串连接而不是添加。您应该将结果转换为之前的数字:
document.write( parseInt( x[i].getElementsByTagName("topY")[0].childNodes[0].nodeValue, 10) + 10);
无论如何,我建议你阅读这个问题的答案:Why is document.write considered a "bad practice"?