如何使用javascript访问动态表单中的元素?
我真的很抱歉,我不知道如何访问这个: 我试图有一个按钮,当点击时,计算一个数组元素的总量,因为它是动态的,但访问方法不起作用 以下是我添加和删除的javascript:如何使用javascript访问动态表单中的元素?,javascript,php,html,dynamic,Javascript,Php,Html,Dynamic,我真的很抱歉,我不知道如何访问这个: 我试图有一个按钮,当点击时,计算一个数组元素的总量,因为它是动态的,但访问方法不起作用 以下是我添加和删除的javascript: function addRow(tableID) { var table = document.getElementById(tableID); var rowCount = table.rows.length; var row = table.insertRow(rowCount); var c
function addRow(tableID) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++) {
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[0].cells[i].innerHTML;
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
break;
case "checkbox":
newcell.childNodes[0].checked = false;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
break;
}
}
}
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) {
if(rowCount <= 1) {
alert("Cannot delete all the rows.");
break;
}
table.deleteRow(i);
rowCount--;
i--;
}
}
}catch(e) {
alert(e);
}
}
函数addRow(tableID){
var table=document.getElementById(tableID);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
var colCount=table.rows[0].cells.length;
对于(var i=0;i[Php股票左:]
通过使用此函数来分离我的ItemNo value和该商品的售价,然后我的函数将无法将checktotal()相加:
函数findexts(f){
f=strtolower(f);
exts=split(“[/\\:]”,f);
n=计数(exts)-1;
exts=exts[n];
返回exts;
}
函数checkTotal(){
var合计=0;
var-temp=0;
var itemArray=document.trans.ItemNo;
对于(var i=0;iso我的访问方法是否正常?此部分:var itemArray=document.trans.ItemNo;??因为在FormitsName中是ItemNo[]我没有任何使用document.trans的经验,所以我忽略了这一部分。我将使用一些jQuery更新我的答案,以检索选择选项的值。哎呀,如果您的销售价格是十进制值,那么parseInt应该是parseFloat。我也将更新它。什么是document.trans
?这是我以前从未遇到过的。。。=/很好,它类似于文档。[formID].[elementname]。所有都引用表单。当页面中有多个表单时非常有用。我在类似检查器的文档中使用了它。trans.itemcegory.value.match(“Watch”){function here}…嗯,它不在我的代码位,我开始我的表格,对迟来的回复表示抱歉,我认为它会立即更新。你真的能帮助任何方法获取值吗?它仍然有效
<tr>
<td>Items</td>
<td style="text-align:left;">
<INPUT type="button" value="Add New Item" onclick="addRow('dataTable')" />
<INPUT type="button" value="Delete Item" onclick="deleteRow('dataTable')" />
<TABLE id="dataTable" width="350px" >
<TR>
<TD><INPUT type="checkbox" name="chk[]"/></TD>
<TD>
<select name="ItemNo[]" id="select" value="ItemNo" >
<?php
$sql2="select * from jewelry_system.item where NumStored !='0' order by ItemName asc";
$result2 = mysql_query($sql2);
while($row2=mysql_fetch_array($result2)){
?>
<option value="<?php echo $row2['ItemNo']?>:<?php echo $row2['SalePrice']?>"> <?php echo $row2['ItemName'];?> [ Php <?php echo $row2['SalePrice'];?> Stocks Left:<?php echo $row2['NumStored'];?> ]</option> <?php } ?>
</select>
</TD>
</TR>
</TABLE >
</td>
</tr>
function findexts(f){
f=strtolower(f);
exts=split('[/\\:]', f);
n=count(exts)-1;
exts=exts[n];
return exts;
}
function checkTotal(){
var total = 0;
var temp = 0;
var itemArray = document.trans.ItemNo;
for(var i=0;i<itemArray.length;i++){
temp = findexts(itemArray[i].value);
total += temp;
}
alert("Total Payment: "+total);
}
function checkTotal()
{
var total = 0;
var parts = null;
// Your select input has an ID of "select", so this will iterate through each option
$('#select option').each( function () {
// The Item # and Sale Price are separated by a colon (:)
parts = $(this).val().split(':');
// Increment the total with the Sale Price of each item
total += parseFloat(parts[1]);
});
alert("Total Payment: "+total);
}
//also The item $ will iterate so try this
// The Item #,$ and Sale Price are separated by a colon (:)
parts = $(this).val().split(':');
// Increment the total with the Sale Price of each item
total += parseFloat(parts[1]);
});
alert("Total Payment: "+total);
}