Ojo con el atributo value de li
http://www.w3schools.com/tags/att_li_value.asp
Mira que pasa
<li value="7.33" onClick="alert(
this.value)">value="7.33"</li>
Muestra 7
<li val="7.33" onClick="alert(
this.val)">value="7.33"</li>
Muestra undefined
<li value="7.33" onClick="alert(
this.getAttribute('value'))">value="7.33"</li>
Muestra 7.33
<li val="7.33" onClick="alert(
this.getAttribute('val'))">val="7.33"</li>
Muestra 7.33
<li pepito="7.33" onClick="alert(
this.getAttribute('pepito'))">pepito="7.33"</li>
Muestra 7.33
en este caso "val" y "pepito" serian lo mismo....
Cita: Quizás con "value" era tomado como string.
Toma el entero porque sirve para numerar los siguientes li en una lista ordenada....
como puedes leer en el enlace quedo obsoleto con HTML 4.01 Cita: The value attribute of <li> is deprecated in HTML 4.01.
<ol>
<li value="7.33">Coffee</li>
<li>Tea</li>
<li>Milk</li>
<li>Water</li>
<li>Juice</li>
<li>Beer</li>
</ol>
7. Coffee
8. Tea
9. Milk
10. Water
11. Juice
12. Beer