动态表Html中的Javascript算术运算
我正在构建一个表单,通过网页将一些数据插入数据库。 一切正常,但我无法在表单表的输入文本元素中显示乘法。 我已经检查了很多教程来做到这一点,代码应该是好的,但我不能有这个小结果。 这是我的html代码。php部分还可以,所以我不会发布它动态表Html中的Javascript算术运算,javascript,jquery,html,Javascript,Jquery,Html,我正在构建一个表单,通过网页将一些数据插入数据库。 一切正常,但我无法在表单表的输入文本元素中显示乘法。 我已经检查了很多教程来做到这一点,代码应该是好的,但我不能有这个小结果。 这是我的html代码。php部分还可以,所以我不会发布它 <html> <head> <meta http-equiv="content-type" content="text/plain; charset=UTF-8"/> <scrip
<html>
<head>
<meta http-equiv="content-type" content="text/plain; charset=UTF-8"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<link href="./css/style2.css" rel="stylesheet" type="text/css">
<?php include("form.php") ?>
<script type="text/javascript">
$("#btnExport").click(function(e) {
window.open('data:application/vnd.ms-excel,' + $('#dataTable').html());
e.preventDefault();
});
</script>
<script type=text/javascript>
function addRow(tableID) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "checkbox";
element1.name="chkbox[]";
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
cell2.innerHTML = "<input type='text' name='TipoLocale[]'>";
var cell3 = row.insertCell(2);
cell3.innerHTML = "<input type='text' name='NomeLocale[]' />";
var cell4 = row.insertCell(3);
cell3.innerHTML = "<input type='text' name='Numero Locale[]' />";
var cell5 = row.insertCell(4);
cell4.innerHTML = "<input type='text' name='TipoCarico[]' />";
var cell6 = row.insertCell(5);
cell5.innerHTML = "<input type='text' name='N°[]' />";
var cell7 = row.insertCell(6);
cell6.innerHTML = "<input type='text' name='Potenza[]' />";
var cell8 = row.insertCell(7);
cell7.innerHTML = "<input type='text' name='PotenzaTotale[]' />";
var cell9 = row.insertCell(8);
cell8.innerHTML = "<input type='text' name='Note[]' />";
}
function deleteRow(tableID) {
try {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
for(var i=0; i<rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if(null != chkbox && true == chkbox.checked) {
table.deleteRow(i);
rowCount--;
i--;
}
}
} catch(e) {
alert(e);
}
}
$('input').change(function(){
var linetotals = 0;
$('[name^="Potenza[]"').each(function(){
n = $(this).parents('tr').find('input').eq(4).val();
potenza = $(this).parents('tr').find('input').eq(5).val();
$(this).val(n*potenza/1000);
linetotals += n*potenza/1000;
});
$('[name=PotenzaTotale[]]').val(linetotals);
});
</script>
</head>
<body>
<input type="button" id="btnExport" value=" Export Table data into Excel " />
<INPUT type="button" value="Add Row" onClick="addRow('dataTable')" />
<INPUT type="button" value="Delete Row" onClick="deleteRow('dataTable')" />
<form action="form.php" method="post" name="f">
<TABLE width="425" border="1">
<thead>
<tr>
<th width="98"></th>
<th width="94">TipoLocale</th>
<th width="121">NomeLocale</th>
<th width="54">NumeroLocale</th>
<th width="54">TipoCarico</th>
<th width="54">N°</th>
<th width="54">Potenza</th>
<th width="54">PotenzaTotale</th>
<th width="54">Note</th>
</tr>
</thead>
<tbody id="dataTable">
</tbody>
</TABLE>
<INPUT type="submit" value="Submit" name="submit" target="_new"/>
</form>
</body>
</html>
$(“#btnExport”)。单击(函数(e){
open('data:application/vnd.ms excel,'+$('#dataTable').html());
e、 预防默认值();
});
函数addRow(tableID){
var table=document.getElementById(tableID);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
var cell1=行插入单元格(0);
var element1=document.createElement(“输入”);
element1.type=“复选框”;
element1.name=“chkbox[]”;
单元格1.附加子元素(元素1);
var cell2=行插入单元格(1);
cell2.innerHTML=“”;
var cell3=行插入单元格(2);
cell3.innerHTML=“”;
var cell4=行插入单元格(3);
cell3.innerHTML=“”;
var cell5=行插入单元格(4);
cell4.innerHTML=“”;
var cell6=行插入单元格(5);
cell5.innerHTML=“”;
var cell7=行插入单元格(6);
cell6.innerHTML=“”;
var cell8=行插入单元格(7);
cell7.innerHTML=“”;
var cell9=行插入单元格(8);
cell8.innerHTML=“”;
}
函数deleteRow(tableID){
试一试{
var table=document.getElementById(tableID);
var rowCount=table.rows.length;
对于(var i=0;i)您所说的乘法是什么意思?您是指结果还是符号*?如果是,那么使用\before*'\*'
是的,我是指。我在$('input').change(function(){…}中使用过,没有任何结果…@user3241019:我没有看到使用正则表达式的OP(其中*
需要用反斜杠转义)。在其他情况下,你会需要它吗?@Bergi同意。但Ashkrimn似乎需要它,但donno仍然在哪里。也许我没有解释清楚。我想在输入文本单元格中打印同一行中两个元素之间的乘法结果。a=$(this)。parents('tr')。find('input')。eq(4)。val();b=$(this)。parents('tr')。find('input')。eq(5)。val();c=a*b;
cell7.innerHTML = "<input type='text' name='Potenza[]' onchange='myfunction()';/>";
function myfunction(){
var numero = document.getElementsByName('N°[]');
var potenza = document.getElementsByName('Potenza[]');
var pt = [];
for (var i = 0; i < numero.length; i++)
{
pt[i] = (parseInt(potenza[i].value) * parseInt(numero[i].value))/1000;
//alert (pt[i]);
document.getElementsByName('PotenzaTotale[]')[i].value = pt[i];
}
};