我已经在html和JavaScript中完成了一些代码......我的查询就是当我点击<td>
时,无论与之相关的值是什么,都必须显示在相应的文本框中...
在<td>
前面我已经采用了文本框...例如,我已经采用了3个<td>
和3个文本框
<script type="text/javascript">
function click3(x) {
x = document.getElementById("name").innerHTML
var a = document.getElementById("txt");
a.value = x;
}
function click1(y) {
y = document.getElementById("addr").innerHTML
var b = document.getElementById("txt1");
b.value = y;
}
function click2(z) {
z = document.getElementById("email").innerHTML
var c = document.getElementById("txt2");
c.value = z;
}
</script>
这是我的JavaScript代码,我知道这不是解决此类问题的适当方法,因为它给出了静态方法来处理这个问题 有没有人有更好的解决方案来解决这个问题? 在JavaScript / jQuery中
答案 0 :(得分:1)
如果click1,click2并且click3应该是三个事件,那么你必须保留所有三个功能,你可以缩短脚本代码以便为文本字段赋值。
<script type="text/javascript">
function click3(x) {
document.getElementById("txt").value = document.getElementById("name").innerHTML;
}
function click1(y) {
document.getElementById("txt1").value = document.getElementById("addr").innerHTML;
}
function click2(z) {
document.getElementById("txt2").value = document.getElementById("email").innerHTML;
}
</script>
如果您有单击事件并缩短分配代码,则可以创建单个函数,
function SomeClick(x) {
document.getElementById("txt").value = document.getElementById("name").innerHTML;
document.getElementById("txt1").value = document.getElementById("addr").innerHTML;
document.getElementById("txt2").value = document.getElementById("email").innerHTML;
}
答案 1 :(得分:1)
据我了解您的问题,您可以尝试以下方式,假设您的HTML结构如何:
HTML标记:
<table id="mytable">
<tr>
<th>Name</th>
<th>Address</th>
<th>Email</th>
</tr>
<tr>
<td class="name">Tom</td>
<td class="addr">789</td>
<td class="email">tom@dot.com</td>
</tr>
<tr>
<td class="name">Dick</td>
<td class="addr">456</td>
<td class="email">dick@dot.com</td>
</tr>
<tr>
<td class="name">Harry</td>
<td class="addr">123</td>
<td class="email">harry@dot.com</td>
</tr>
</table>
<input id="txt1" type="text" />
<input id="txt2" type="text" />
<input id="txt3" type="text" />
<强>的jQuery 强>:
$(".name").click(function(){
$("#txt1").val($(this).text());
$("#txt2").val($(this).nextAll().eq(0).text());
$("#txt3").val($(this).nextAll().eq(1).text());
});
$(".addr").click(function(){
$("#txt2").val($(this).text());
$("#txt1").val($(this).prevAll().eq(0).text());
$("#txt3").val($(this).nextAll().eq(0).text());
});
$(".email").click(function(){
$("#txt3").val($(this).text());
$("#txt2").val($(this).prevAll().eq(0).text());
$("#txt1").val($(this).prevAll().eq(1).text());
});
答案 2 :(得分:0)
您可以组合列和行。每个单元格包含id,你可以给它列标题和
系列数可以是行和列的行组合的索引给出
按照特定事件的表格单元格地址,您可以读取id的值
然后你知道要拉出单元格值。
$('tr')
.click(function() {
ROW = $(this)
.attr('id');
$('#display_Colume_Raw')
.html(COLUME + ROW);
$('#input' + COLUME + ROW)
.show();
STATUS = $("#input" + COLUME + ROW)
.val();
});