0

我有一张表,我想从中获得价值。当用户单击单元格中的图标时,我需要将单元格中的文本直接放在右侧。我正在使用此代码创建表。

php

$project_info = $db->prepare("
    SELECT  projects.id,
        projects.project_name,                  
        projects.pm,    
        // ...more columns   
    FROM projects
    WHERE account_id = ?                        
"); 

$project_info->bindValue(1, $aid, PDO::PARAM_STR);
$project_info->execute();       

echo "<table class='projects_contentTable'>";
echo "<th class='content_th'>" . "" . "</th>";
echo "<th class='content_th'>" . "" . "</th>";
echo "<th class='content_th'>" . "Job #" . "</th>";
// ...more headers   

while ($row = $project_info->fetch(PDO::FETCH_ASSOC)) {             
    echo "<tr>";
    echo "<td class='content_td'>" . "<img src='images/edit.png' class='edit_project_record'/>" . "</td>";
    echo "<td class='content_td'>" . "<img src='images/view.png' class='view_project_record'/>" . "</td>";              
    echo "<td class='content_td'>" . "<a href='#'>" . $row['id'] . "</a>" . "</td>";
    // ...more td's
    echo "</tr>";               
}
echo "</table>";

这段代码从单元格中获取值

jQuery

$('body').on('click', '.view_project_record', function() {
    pid = $(this).next('td').text();
    alert(pid);
    loadProject();
});

现在,当警报触发时,它会向我发送一个空白框,好像“td”没有任何价值。

这是我在评论中尝试过的其他结果

pid = $(this).next('.content_td').text(); // no value
pid = $(this).next('.projects_contentTable td a').text();// no value
pid = $(this).next('a').text(); // no value    
pid = $('.projects_contentTable .content_td:eq(3) a').text(); // no value
pid = $('.projects_contentTable td:nth-child(3) a').text(); // all the values from the column... I just want the one from this row

如您所见,我显然只是不明白这是如何工作的。我的愿望是为我单击的图标所在的确切行获取 Job# 的值。不多也不少。我需要这个值来发送AJAX帖子,这让我发疯。我知道至少有 5 种方法可以获得这个值,越多越好,我只是想了解它是如何工作的。感谢您的帮助

4

2 回答 2

1

在调用next().$(this).parent().next('td').text();

于 2013-08-02T23:03:37.600 回答
0

使用.children()insted of.next()

于 2013-08-02T23:02:57.700 回答