将行内容获取到弹出窗口中
Get row content to a popup window
当用户单击表行时,我使用此函数弹出一个窗口
<script type="text/javascript">
$(document).ready(function() {
$("td.abc").click(function() {
var t = 'Ticket ID: ' + $(this).find('td:eq(0)').html()+''n'+''n';
var r = 'Subject: ' + $(this).find('td:eq(1)').html()+''n'+''n';
var e = 'Messege: ' + $(this).find('td:eq(2)').html()+''n'+''n';
var f = 'Developer: ' + $(this).find('td:eq(3)').html()+''n'+''n';
var w = 'Current Status: ' + $(this).find('td:eq(4)').html()+''n'+''n';
var q = 'Uploaded Date & Time: ' + $(this).find('td:eq(5)').html()+''n'+''n';
var o = $("#79").attr("name")+''n'+''n';
alert(t+r+e+f+w+q+o);
});
});
</script>
我的桌子如下
echo "<br> <table border='0' id='example' width='980' align='center'>
<tr>
<th width='60'>Ticket ID</th>
<th width='150'>Subject</th>
<th width='670'>Messege</th>
<th width='60'>Developer</th>
<th width='70'>Status</th>
<th width='105'>Date - Time</th>
</tr>";
while($row = mysql_fetch_array($result)) {
//echo $row['jobSatus'];
echo "<tr>";
echo "<td class='"abc'" width='60'>" . $row['id'] . "</td>";
echo "<td class='"abc'" width='150'>" . $row['subject'] . "</td>";
echo "<td class='"abc'" width='670'>" . $row['msg'] . "</td>";
echo "<td class='"abc'" width='60'>" . $row['developer'] . "</td>";
echo "<td class='"abc'"width='60'>" . $row['jobstatus'] . "</td>";
echo "<td class='"abc'" width='105'>" . $row['date_time'] . "</td>";
echo "<input class='"abc'" type='hidden' name=".$row['image']." id=".$row['id'].">";
echo "</tr>";
}
echo "</table>";
现在在弹出窗口中,我没有得到任何值。上面写着"未定义"。如果有人能证明我做错了什么,我将不胜感激。
尝试更改此。。。
var t = 'Ticket ID: ' + $(this).find('td:eq(0)').html()+''n'+''n';
到这个
var t = 'Ticket ID: ' +$(this).closest('td:eq(0)').attr('class');
希望这会有所帮助。。。。
您单击的是表格单元格,而不是表格行
$("td.abc").click(function() {
^^
将其更改为查看表
$("#example").on("click", "tr", function () {
或
$("#example").on("click", "tr:has(td.abc)", function () {
您的HTML标记是无效的,因为输入元素不能是tr.
在表行上设置onclick
$("tr.ticker-row").click(function(ev) {
var $this = $(ev.currentTarget);
var t = 'Ticket ID: ' + $this.find('td:eq(0)').html()+''n'+''n';
var r = 'Subject: ' + $this.find('td:eq(1)').html()+''n'+''n';
var e = 'Messege: ' + $this.find('td:eq(2)').html()+''n'+''n';
var f = 'Developer: ' + $this.find('td:eq(3)').html()+''n'+''n';
var w = 'Current Status: ' + $this.find('td:eq(4)').html()+''n'+''n';
var q = 'Uploaded Date & Time: ' + $this.find('td:eq(5)').html()+''n'+''n';
var o = $this.find('input').attr('name') + ''n'+''n';
alert(t+r+e+f+w+q+o);
});
在php上,除了td
之外,不要在tr
中插入任何节点
while($row = mysql_fetch_array($result)) {
//echo $row['jobSatus'];
echo "<tr class='"ticket-row'" data-row-index='"".$row['id']."'">";
echo "<td class='"abc'" width='60'>" . $row['id'] . "<input class='"abc'" type='hidden' name=".$row['image']." ></td>";
echo "<td class='"abc'" width='150'>" . $row['subject'] . "</td>";
echo "<td class='"abc'" width='670'>" . $row['msg'] . "</td>";
echo "<td class='"abc'" width='60'>" . $row['developer'] . "</td>";
echo "<td class='"abc'"width='60'>" . $row['jobstatus'] . "</td>";
echo "<td class='"abc'" width='105'>" . $row['date_time'] . "</td>";
echo "</tr>";
}
echo "</table>";
相关文章:
- 用javascript从窗口获取文档,同时检查文档是否已加载
- 如何通过弹出窗口获取输入并通过javascript/jquery将文本放入变量中
- 从父窗口获取 iframe 中文本框的值
- 从 window.open()'ed 窗口获取内容后重定向
- 从后台页面Chrome扩展弹出窗口获取iframe
- 如何在电子应用程序中从浏览器窗口获取DOM树
- 从弹出窗口获取值
- 从另一个打开的具有不同来源的窗口获取Url
- 从父窗口获取iframe html或名称
- 如何从KendoUI模式窗口获取返回值
- 从Javascript弹出窗口获取值-用作php post值
- 如何使用javascript从父窗口获取子窗口url
- 从mysql到弹出窗口获取数据
- 从显示另一个域的另一个窗口获取文档位置
- 当文本框从弹出窗口获取值时加载数据
- 当窗口关闭时,如何从JS弹出窗口获取数据
- 从子窗口获取数据
- ASP.NET:如何从弹出窗口获取JavaScript变量
- 如何从框架窗口获取框架集
- 从子窗口获取值时出现问题