document.getElementById 返回未定义的值



我想获取递增和递减输入类型值。 该值在 JavaScript 中显示未定义。 怎么做 .

echo '<td id="textone_'.$row['id'].'">'.$row['fee']. '</td>'; 
echo '<td id="texttwo_'.$row['id'].'"> 
<input type="number" min="0" max="999" name="india"  
onChange="sum('.$row['id'].');" class="txtbox" disabled="disabled" ></td>';
echo '<td> <input type="text" value="0"
id="result_'.$row['id'].'" name="result"></td>';
Ajax
************
<script type="text/javascript">
function sum(rowid) {
var txtFirstNumberValue =  
document.getElementById('textone_'+rowid).innerHTML;
alert(txtFirstNumberValue );  
var txtSecondNumberValue = 
document.getElementById('texttwo_'+rowid).value;
alert(currentVal);        
var result = parseInt(txtFirstNumberValue) * 
parseInt(txtSecondNumberValue);
alert(result);
if (!isNaN(result)) {
document.getElementById('result_'+rowid).value = result;
}
}
</script>

如何解决这个问题?

代码中有很多错误。

试试这个:

<?php
echo '<td id="texttwo_' . $row['id'] . '"> 
<input type="number" min="0" max="999" name="sets" class="txtbox" onchange="getValue(this);" ></td>';
?>
<script>
function getValue(obj) {
alert(obj.value);
}
</script>

以下是代码不起作用的原因:

  1. 您禁用了输入框,这意味着递增/递减 箭头首先不起作用。
  2. 您的onchange()函数没有意义。你想总结什么?
  3. 你定义了txtSecondNumberValue但你叫currentVal.

查看此处以获取更多JavaScript见解。

您的 JavaScript 值txtSecondNumberValue正在尝试检索td标签的值,而不是输入字段。此外,您正在提醒未在任何地方定义的 JavaScript 变量。您在尝试获取元素值时连接的rowid也是错误的。它不是一个JavaScript变量或其他任何包含任何东西的东西。如果有的话,它将充当字符串连接,您将尝试检索以下内容的值:texttwo_rowid,它不存在。

请尝试以下操作:

<?php
echo '
<td id="td_'.$row['id'].'"> 
<input type="number" min="0" max="999" name="sets[]" onChange="sum('.$row['id'].');" id="texttwo_'.$row['id'].'" class="txtbox" disabled="disabled" />
</td>';
?>
<script>
var txtSecondNumberValue = document.getElementById('texttwo_'+<?php echo $row['id']; ?>).value;
alert(txtSecondNumberValue);
</script>

相关内容

  • 没有找到相关文章

最新更新