【发布时间】:2014-03-28 21:01:10
【问题描述】:
我有一个类似的 HTML,
<table>
<tr>
<td><input type="text" data-column="A" value="5" data-row="1" /></td>
<td><input type="text" data-column="B" value="2" data-row="1" /></td>
</tr>
<tr>
<td><input type="text" value="7" data-column="A" data-row="2" /></td>
<td><input type="text" value="9" data-column="B" data-row="2" /></td>
</tr>
<tr>
<th><input type="text" data-column="A" data-row="3" data-equation="A1+A2-B1" /> </th>
<th><input type="text" data-column="B" data-row="3" data-equation="B1+B2" /></th>
</tr>
</table>
和我的 javascript 一样
$('input').each(function(){
if($(this).attr('data-equation')!=undefined){
var equation=$(this).attr('data-equation');
$(this).val(calculate(equation))
}
});
function calculate(equation){
result=0;
//calculate value and return,i dont know how to calculate
return result;
}
我需要根据data-equation计算值,在等式中,第一个元素参考data-column,第二个参考data-row强>
【问题讨论】:
-
您需要将表达式拆分为非字母数字字符并从那里开始。
-
一个很好的问题,但它不会像执行一个简单的方程那么简单,你必须编写一个解析器来首先分离所有的运算符和操作数
-
你的意思是第二个是指数据行吗?
-
@Nimnam1 是的............
标签: javascript jquery input