如何在php
中的同一页面onchange事件中获取在while循环中创建的文本框的值while($fet=mysql_fetch_assoc($sql1))
{
echo '<tr onchange=loadXMLDoc2(this)>';
echo '<td><input type=text id=hello name=hello data-id='.$fet["username"].' onchange=loadXMLDoc1(this.value,this,"hello"); value='.$fet["username"].'>';
echo '<td><input type=text id=uid name=uid onchange=loadXMLDoc1(this.value,this,"uid") value='.$fet["id"].'>';
echo '</tr>';
}
答案 0 :(得分:0)
首先,您需要为每个文本框设置不同的ID。
echo '<td><input type=text id='+some_id+'...'
然后,您将能够使用document.getElemenyById('some_id').value
在javascript中获取文本框值
此外,您还在使用onchange=func(this.value)
。这也可以,虽然theis方法是less recommended。
答案 1 :(得分:0)
您的代码存在一些问题:
1)在循环中分配静态ID将创建重复的ID,这在HTML中是无效的。您不需要onchange
的ID以您的方式工作,因此您可以删除它们。如果由于其他原因需要ID,请为它们添加一些计数器。类似于id=hello$i
。
2)使用onchange
将导致每次击键都加载xml doc。这真的是你想要的吗?如果您实际上只想在用户输入整个值时加载xml doc一次,请考虑使用onblur
。
除此之外,你对this.value的使用似乎很好。如果它没有按预期工作,那么请解释一下你得到了什么,以便我们为你提供帮助。