我需要在变量列表中对100多个项目进行两个数字之间的简单划分,
在循环内部,HTML看起来像:
<input id="box1{{ item.0 }}" type="text" onkeyup="calculate()" />
<input id="box2{{ item.0 }}" type="text" onkeyup="calculate()" value="{{ item.7 }}"/>
<input id="result{{ item.0 }}" />
我的剧本
function calculate(){
console.log(1);
var myBox1 = document.getElementById('box1{{ item.0 }}').value;
var myBox2 = document.getElementById('box2{{ item.0 }}').defaultValue;
var result = document.getElementById('result{{ item.0 }}');
var myResult = myBox1 / myBox2;
result.value = myResult;}
出于某种原因,我无法在循环中使用它,脚本在我的列表中的每个项目的循环内部,也许是因为JS无法捕获jinja变量{{item }?
答案 0 :(得分:-1)
所以...它现在有效,我知道这不是最好的解决方案,但现在是:
<input id="box1{{ item.0 }}" type="text" onkeyup="calculate{{item.0}}()" />
<input id="box2{{ item.0 }}" type="text" onkeyup="calculate{{item.0}}()" value="{{ item.7 }}"/>
<input id="result{{ item.0 }}" />
<script>
function calculate{{coin.0}}(){
console.log("{{ item.0 }}");
var myBox1 = document.getElementById('box1{{ item.0 }}').value;
var myBox2 = document.getElementById('box2{{ item.0 }}').defaultValue;
var result = document.getElementById('result{{ item.0 }}');
var myResult = myBox1 / myBox2;
result.value = myResult;}
</script>
我将功能 计算()更改为功能计算{{item.0}}()