如何获取元素内文本输入的值?
我有多个 id,所以我首先将它们的字符串分配到一个数组中;
var itemArray = ["regpay", "overtime","absent","nightdiff","ctpa","salary","hdmf","otallowance","others"];
我使用 for 循环实例化了它们
for (var i = 0; i < itemArray.length; i++)
{
var e = $("<td><input type=\"text\" autocomplete=\"off\" name=\""+itemArray[i]+"\" id=\""+itemArray[i]+"\"/></td>");
var mytest =e.find('#'+itemArray[i]).val();
alert(mytest);
}
错误提示“$未定义”; 如何获取 td 元素内文本框的值
?
我也尝试过使用:
try
{
var Row = document.getElementById(itemArray[i]);
var Cell = Row.getElementsByTagName("td");
var val = Cell.getElementById(itemArray[i]);
}
但是 val 变量不返回任何内容,因此我假设 td 没有显式获取其中文本框的值。
最佳答案
如果您已有 #ids
的列表,那么您所要做的就是使用 document.getElementById
query selector :
var ids = [ "regpay", "overtime","absent", "nightdiff", "ctpa", "salary",
"hdmf", "otallowance", "others"];
var r = [];
ids.forEach(function (id) {
r.push(document.getElementById(id).innerHTML);
})
alert("text found:" + r);
<p id='regpay'>0</p>
<p id='overtime'>1</p>
<p id='absent'>2</p>
<p id='nightdiff'>3</p>
<p id='ctpa'>4</p>
<p id='salary'>5</p>
<p id='hdmf'>6</p>
<p id='otallowance'>7</p>
<p id='others'>8</p>
(我在这里使用了 <p
>,因为我不想制作整个表格结构,但上面的代码也适用于 <td>
。如果上面的 id 引用输入框,则应该使用document.getElementById(id).value
相反。您的问题在这方面不清楚。)
关于javascript - 如何获取 <td> 元素内文本输入的值(不使用 JQuery)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28144549/