在应用程序中使用 jquery 访问所有 td 文本的文本

本文关键字:文本 td 访问 jquery 应用程序 | 更新日期: 2023-09-27 18:35:14

嗨,我想访问应用程序所有部分中存在的文本。我不能使用 id,因为在一个应用程序中有不同的表具有不同的 id。每当我将鼠标放在该 td 单元格上时,无论表如何,我都想访问文本名称,因此我无法使用 id。请向我建议一种使用 JQuery 执行此操作的方法。我想访问的文本来自 asp.net aspx 页面。

在应用程序中使用 jquery 访问所有 td 文本的文本

在jquery中,您可以将悬停事件应用于每个获取文本的td。 将文本放在变量中,然后使用 Ajax 将其传递给.aspx处理程序。 下面是一个简单的示例。 最好将此脚本块放在 ready 函数中或文档末尾附近。

jQuery

$('td').hover(function () {
        //mouse over
        //get the data
        var tdText = $(this).text();
        console.log(tdText);
        //do something with the data
        var jqxhr = $.ajax("handler.aspx?text=" + tdText)
            .done(function () {
                console.log("success");
                //do something
            })
            .fail(function () {
                console.log("error");
                //do something else
            });
    },
    function () {
        //mouse out
        console.log("mouse-out");
    }
);

我只能帮助您确定鼠标光标是否在任何 td 元素上方。您将需要修改代码以满足您的需要,以显示有用的内容。

.HTML:

<p id="message">&nbsp;</p>
<table>
    <tr>
        <td>Data 1</td>
        <td>Data 2</td>
        <td>Data 3</td>
    </tr>
    <tr>
        <td>Data A</td>
        <td>Data B</td>
        <td>Data C</td>
    </tr>
</table>

.JS:

addEventListener("mouseover", function(event) {
    if (event.toElement.localName == 'td')
        $('#message').html("You are in a table cell");
    else
        $('#message').html("&nbsp;");
}, false);

我还创建了一个小提琴供您测试:http://jsfiddle.net/m3EmK/