动态Javascript Div
我得去工作了 随附我有以下功能,其目的是执行基本计算。我还添加了一个功能,可以添加更多的计算框。我目前所关注的是如何告诉Javascript生成动态div,以及如何告诉它在每次单击Calculate时对每一行执行相同的计算。在此方面的协助将不胜感激。提前谢谢大家动态Javascript Div,javascript,Javascript,我得去工作了 随附我有以下功能,其目的是执行基本计算。我还添加了一个功能,可以添加更多的计算框。我目前所关注的是如何告诉Javascript生成动态div,以及如何告诉它在每次单击Calculate时对每一行执行相同的计算。在此方面的协助将不胜感激。提前谢谢大家 <div id="redo"> 2 X <input type="text" id="initial"> = <input type="text" id="solved"> <input t
<div id="redo">
2 X
<input type="text" id="initial">
= <input type="text" id="solved">
<input type="submit" value="Calculate" onclick="calculait()">
<input type="submit" value="Add Another Box" onclick="addmore()">
</div>
<div id="main"></div>
<script type="text/javascript">
function calculait(){
var first = document.getElementById('initial');
var second = document.getElementById('solved');
second.value = first.value * 2;
}
function addmore(){
var bar = document.getElementById('main');
bar.innerHTML = bar.innerHTML + "<div id='redo'>2 X
<input type='text' id='initial'> = <input type='text' id='solved'>
<input type='submit' value='Calculate' onclick='calculait()'
<input type='submit' value='Add Another Box' onclick='addmore()";
}
</script>
2 X
=
函数计算器(){
var first=document.getElementById('initial');
var second=document.getElementById('solved');
second.value=first.value*2;
}
函数addmore(){
var bar=document.getElementById('main');
bar.innerHTML=bar.innerHTML+“2 X
=
以下是多种方法之一。您可以使用以下HTML结构:
<div id="main">
<div class="operation">
2 X <input type="text" class="initial"/>=
<input type="text" class="solved"/>
</div>
</div>
<input type="submit" value="Calculate" onclick="calculait()"/>
<input type="submit" value="Add Another Box" onclick="addmore()"/>
2 X=
这是:
// Main container for all operations
var main = document.getElementById('main');
// Piece of HTML you'll be duplicating
var op = document.getElementsByClassName('operation')[0].outerHTML;
function calculait() {
// Get every operation div
var operations = document.getElementsByClassName('operation');
// For each of them, calculate
for(var i=0, l=operations.length; i<l; i++){
operations[i].getElementsByClassName('solved')[0].value =
parseFloat(operations[i].getElementsByClassName('initial')[0].value) * 2;
}
}
function addmore() {
main.insertAdjacentHTML('beforeend',op);
}
//所有操作的主容器
var main=document.getElementById('main');
//你将要复制的一段HTML
var op=document.getElementsByClassName('operation')[0].outerHTML;
函数计算器(){
//抓住每一个行动小组
var operations=document.getElementsByClassName('operation');
//对于每一个,计算
对于(var i=0,l=operations.length;i,这里有许多方法之一。您可以使用以下HTML结构:
<div id="main">
<div class="operation">
2 X <input type="text" class="initial"/>=
<input type="text" class="solved"/>
</div>
</div>
<input type="submit" value="Calculate" onclick="calculait()"/>
<input type="submit" value="Add Another Box" onclick="addmore()"/>
2 X=
这是:
// Main container for all operations
var main = document.getElementById('main');
// Piece of HTML you'll be duplicating
var op = document.getElementsByClassName('operation')[0].outerHTML;
function calculait() {
// Get every operation div
var operations = document.getElementsByClassName('operation');
// For each of them, calculate
for(var i=0, l=operations.length; i<l; i++){
operations[i].getElementsByClassName('solved')[0].value =
parseFloat(operations[i].getElementsByClassName('initial')[0].value) * 2;
}
}
function addmore() {
main.insertAdjacentHTML('beforeend',op);
}
//所有操作的主容器
var main=document.getElementById('main');
//你将要复制的一段HTML
var op=document.getElementsByClassName('operation')[0].outerHTML;
函数计算器(){
//抓住每一个行动小组
var operations=document.getElementsByClassName('operation');
//对于每一个,计算
对于(var i=0,l=operations.length;i如果我理解正确,我认为这段代码会有所帮助
首先,更改类的ID(ID在页面中必须始终唯一)
JSFiddle:
试一试,让我知道它是否有用!如果我理解正确,我认为这段代码会有所帮助
首先,更改类的ID(ID在页面中必须始终唯一)
JSFiddle:
试试看,如果有帮助请告诉我!这里有一种方法:
var计数器=0;
函数计算器(calculationId){
var first=document.getElementById('initial'+calculationId);
var second=document.getElementById('solved'+calculationId);
second.value=first.value*2;
}
函数addmore(){
计数器++;
var bar=document.getElementById('main');
var newDiv=document.createElement(“div”);
newDiv.id=“重做”+计数器;
newDiv.innerHTML=“2 X=”;
律师事务所(newDiv);
}
2x=
以下是一种方法:
var计数器=0;
函数计算器(calculationId){
var first=document.getElementById('initial'+calculationId);
var second=document.getElementById('solved'+calculationId);
second.value=first.value*2;
}
函数addmore(){
计数器++;
var bar=document.getElementById('main');
var newDiv=document.createElement(“div”);
newDiv.id=“重做”+计数器;
newDiv.innerHTML=“2 X=”;
律师事务所(newDiv);
}
2x=
HTML
Javascript
var id = 0, multiplier = 2;
var operations = document.getElementById('operations');
function addOp() {
++id;
var p = document.createElement("p");
var right = document.createElement("input");
right.id = 'right_' + id;
right.type = 'text';
var result = document.createElement('input');
result.id = 'result_' + id;
right.type = 'text';
p.innerHTML = multiplier + ' x ';
p.appendChild(right);
p.innerHTML += ' = ';
p.appendChild(result);
operations.appendChild(p);
}
function calc() {
for(var i = 1; i <= id; i++) {
var right = document.getElementById('right_' + i);
var result = document.getElementById('result_' + i);
result.value = multiplier * right.value;
}
}
addOp();
var id=0,乘数=2;
var operations=document.getElementById('operations');
函数addOp(){
++身份证;
var p=document.createElement(“p”);
var right=document.createElement(“输入”);
right.id='right_uu'+id;
right.type='text';
var result=document.createElement('input');
result.id='result_uu'+id;
right.type='text';
p、 innerHTML=乘数+x';
p、 儿童(右),;
p、 innerHTML+='=';
p、 结果;
手术治疗:儿童(p);
}
函数计算(){
对于(var i=1;iHTML
Javascript
var id = 0, multiplier = 2;
var operations = document.getElementById('operations');
function addOp() {
++id;
var p = document.createElement("p");
var right = document.createElement("input");
right.id = 'right_' + id;
right.type = 'text';
var result = document.createElement('input');
result.id = 'result_' + id;
right.type = 'text';
p.innerHTML = multiplier + ' x ';
p.appendChild(right);
p.innerHTML += ' = ';
p.appendChild(result);
operations.appendChild(p);
}
function calc() {
for(var i = 1; i <= id; i++) {
var right = document.getElementById('right_' + i);
var result = document.getElementById('result_' + i);
result.value = multiplier * right.value;
}
}
addOp();
var id=0,乘数=2;
var operations=document.getElementById('operations');
函数addOp(){
++身份证;
var p=document.createElement(“p”);
var right=document.createElement(“输入”);
right.id='right_uu'+id;
right.type='text';
var result=document.createElement('input');
result.id='result_uu'+id;
right.type='text';
p、 innerHTML=乘数+x';
p、 儿童(右),;
p、 innerHTML+='=';
p、 结果;
手术治疗:儿童(p);
}
函数计算(){
对于(var i=1;i当您使用调试器编写JavaScript时,您的代码没有解析。您可以通过点击F12在浏览器中找到一个
不要重复你自己。一个干净的解决方案是将要复制的html放入模板或类似的模板中,然后调用一个函数来复制它
使用输入类型=数字表示数字
<html>
<meta charset="utf-8">
<template id="calculate_template">
<form id="" class="calculate_form">
<input value="2" type="number" name="initial_1"> X
<input type="number" name="initial_2"> =
<input type="number" name="solved" disabled="disabled" >
</form>
</template>
<div id="main">
<button onclick="addmore();">Add Another Box</button>
<button onclick="calculate();">Calculate</button>
</div>
<script type="text/javascript">
function calculate(){
/*Calculates all*/
var forms = document.getElementsByClassName('calculate_form'),
i,
length = forms.length;
for(i = 0; i < length; i++){
console.log(forms[i]);
forms[i]['solved'].value = forms[i]['initial_1'].value * forms[i]['initial_2'].value;
}
}
function addmore(){
var main = document.getElementById('main');
main.insertAdjacentHTML("beforeend", document.getElementById('calculate_template').innerHTML);
}
addmore();
</script>
</html>
X
=
添加另一个框
算计
函数计算(){
/*计算所有*/
var forms=document.getElementsByClassName('calculate_form'),
我
长度=forms.length;
对于(i=0;i
当您使用调试器编写JavaScript时,您的代码没有进行解析。您可以通过点击F12在浏览器中找到一个
不要重复你自己。一个干净的解决方案是将要复制的html放入模板或类似的模板中,然后调用一个函数来复制它
使用输入类型=数字表示数字
<html>
<meta charset="utf-8">
<template id="calculate_template">
<form id="" class="calculate_form">
<input value="2" type="number" name="initial_1"> X
<input type="number" name="initial_2"> =
<input type="number" name="solved" disabled="disabled" >
</form>
</template>
<div id="main">
<button onclick="addmore();">Add Another Box</button>
<button onclick="calculate();">Calculate</button>
</div>
<script type="text/javascript">
function calculate(){
/*Calculates all*/
var forms = document.getElementsByClassName('calculate_form'),
i,
length = forms.length;
for(i = 0; i < length; i++){
console.log(forms[i]);
forms[i]['solved'].value = forms[i]['initial_1'].value * forms[i]['initial_2'].value;
}
}
function addmore(){
var main = document.getElementById('main');
main.insertAdjacentHTML("beforeend", document.getElementById('calculate_template').innerHTML);
}
addmore();
</script>
</html>
X
=
添加另一个框
算计
函数计算(){
/*计算所有*/
var forms=document.getElementsByClass