Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 从HTML表中获取值_Jquery_Html - Fatal编程技术网

Jquery 从HTML表中获取值

Jquery 从HTML表中获取值,jquery,html,Jquery,Html,我有一张表,上面显示了一些数据 如下表所示: 现在我有了这个按钮,它将显示值。在本例中,我想显示每行的每个名称 输出样本必须是: alert('people.name');//of first row alert('people.name'); //of second row alert('people.name'); //and so on 我尝试过此代码,但它显示未定义: $('#btn').click(function () { var name; var addre

我有一张表,上面显示了一些数据

如下表所示:

现在我有了这个按钮,它将显示值。在本例中,我想显示每行的每个名称

输出样本必须是:

alert('people.name');//of first row
alert('people.name'); //of second row
alert('people.name'); //and so on
我尝试过此代码,但它显示未定义:

$('#btn').click(function () {

    var name;
    var address;
    var contact;
    var people = [];

    $('#sample tbody tr').each(function () {
        var line = {
            'name': $(this).find('td:nth-child(1)').html(),
            'address': $(this).find('td:nth-child(2)').html(),
            'contact': $(this).find('td:nth-child(3)').html()
        };
        people.push(line);
        alert(people.name);
    });
});
但它所做的是返回未定义的值。 有什么问题?请帮帮我

我的桌子:

<table id="sample">
<thead>
    <tr>
        <th>Name</th>
        <th>Address</th>
        <th>Contact</th>
    </tr>
</thead>
<tbody>
    <tr>
        <td>Dave</td>
        <td>Alpha St.</td>
        <td>12345</td>
    </tr>
    <tr>
        <td>Jade</td>
        <td>Delta St.</td>
        <td>56789</td>
    </tr>
    <tr>
        <td>Elsa</td>
        <td>Beta St.</td>
        <td>54321</td>
    </tr>
    <tr>
        <td>Mack</td>
        <td>Fox St.</td>
        <td>52324</td>
    </tr>
</tbody>

名称
地址
接触
戴夫
阿尔法街。
12345
玉
三角洲街。
56789
埃尔莎
贝塔街。
54321
麦克
福克斯街。
52324


请尝试使用此代码

$(document).ready(function (){
          $('#btn').click(function () {

    var name;
var address;
var contact;
var people = [];

$('#sample tbody tr').each(function (value,key) {
    var line = {
        'name': $(this).find('td').html(),
        'address': $(this).find('td:nth-child(2)').html(),
        'contact': $(this).find('td:nth-child(3)').html()
    };
    people.push(line);
alert('Name =>   '+ people[value]['name'] +'  Address =>   '+ people[value]['address'] +'  Contact =>  ' + people[value]['contact']);

    });
console.log(people);
});
});
确保代码中的id是唯一的。

您可以直接从数组中显示姓名、联系人、地址,如下所示:

console.log(people[key]['name']);//need to change key value contact,address.

希望这有帮助。

请尝试使用此代码

$(document).ready(function (){
          $('#btn').click(function () {

    var name;
var address;
var contact;
var people = [];

$('#sample tbody tr').each(function (value,key) {
    var line = {
        'name': $(this).find('td').html(),
        'address': $(this).find('td:nth-child(2)').html(),
        'contact': $(this).find('td:nth-child(3)').html()
    };
    people.push(line);
alert('Name =>   '+ people[value]['name'] +'  Address =>   '+ people[value]['address'] +'  Contact =>  ' + people[value]['contact']);

    });
console.log(people);
});
});
确保代码中的id是唯一的。

您可以直接从数组中显示姓名、联系人、地址,如下所示:

console.log(people[key]['name']);//need to change key value contact,address.
希望这有帮助。

试试这个

$('#btn').click(function () {

    var people = [];
    $('#sample tbody tr').each(function () {
        var $tds = $(this).find('td');
        var line = {
            name:     $tds.eq(0).text(),
            address:  $tds.eq(1).text(),
            contact:  $tds.eq(2).text()
        };
        people.push(line);        
    });

    var names = '';
    $(people).each(function () {
       names += this.name + ', ';
    });

   alert(names);
});
试试这个

$('#btn').click(function () {

    var people = [];
    $('#sample tbody tr').each(function () {
        var $tds = $(this).find('td');
        var line = {
            name:     $tds.eq(0).text(),
            address:  $tds.eq(1).text(),
            contact:  $tds.eq(2).text()
        };
        people.push(line);        
    });

    var names = '';
    $(people).each(function () {
       names += this.name + ', ';
    });

   alert(names);
});
等式(i)从0开始

$('#btn').click(function () {
var name;
var address;
var contact;
var people = []
 $('#sample tbody tr').each(function () {
    var line = {
        'name': $(this).find('td').eq(0).text(),
        'address': $(this).find('td').eq(1).text(),
        'contact': $(this).find('td').eq(2).text()
    };
    people.push(line);
    alert(people.name);
});
});
等式(i)从0开始

$('#btn').click(function () {
var name;
var address;
var contact;
var people = []
 $('#sample tbody tr').each(function () {
    var line = {
        'name': $(this).find('td').eq(0).text(),
        'address': $(this).find('td').eq(1).text(),
        'contact': $(this).find('td').eq(2).text()
    };
    people.push(line);
    alert(people.name);
});
});

正如我理解你的问题,它会很好地工作

$(document).ready(function (){
  $('#btn').on('click',function () {

    var name;
    var address;
    var contact;
    var people = [];

    $('#sample tbody tr').each(function (key,val) {

        var line = {
            'name': $(this).find('td:eq(0)').html(),
            'address': $(this).find('td:eq(1)').html(),
            'contact': $(this).find('td:eq(2)').html()
        };

        people.push(line);

        console.log("NAME: "+people[key]['name']);

        console.log("ADDRESS: "+people[key]['address']);

        console.log("CONTACT: "+people[key]['contact']);

    });

  });
});

正如我理解你的问题,它会很好地工作

$(document).ready(function (){
  $('#btn').on('click',function () {

    var name;
    var address;
    var contact;
    var people = [];

    $('#sample tbody tr').each(function (key,val) {

        var line = {
            'name': $(this).find('td:eq(0)').html(),
            'address': $(this).find('td:eq(1)').html(),
            'contact': $(this).find('td:eq(2)').html()
        };

        people.push(line);

        console.log("NAME: "+people[key]['name']);

        console.log("ADDRESS: "+people[key]['address']);

        console.log("CONTACT: "+people[key]['contact']);

    });

  });
});

people
是一个数组-它不包含名为
name
的属性。如果需要集合中的第一个
名称
,请使用
人员[0]。名称
人员
是一个数组-它不包含名为
名称
的属性。如果您想要集合中的第一个
name
,请使用
people[0]。name
我试过了,效果很好。但唯一的问题是,它只在名义上起作用。如果我想知道地址或联系方式怎么办。。我的目标是我将使用
作为我的ajaxI中的数据。我在我的帖子中发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换,然后发送到我的服务器,读取下一行,项目将被替换,然后发送到我的服务器我尝试了它,它工作了。但唯一的问题是,它只在名义上起作用。如果我想知道地址或联系方式怎么办。。我的目标是我将使用
作为我的ajaxI中的数据。我在我的帖子中发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换然后发送到我的服务器,读取下一行,项目将被替换然后发送到我的服务器使用var$tds=$(this.find('td');我也更新了我的答案。我在帖子里发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换然后发送到我的服务器,读取下一行,项目将被替换然后发送到我的服务器您想要发送到服务器的对象是什么?人员数组还是单个人员对象?再解释一下,并分享您的服务器端代码使用var$tds=$(this.find('td');我也更新了我的答案。我在帖子里发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换然后发送到我的服务器,读取下一行,项目将被替换然后发送到我的服务器您想要发送到服务器的对象是什么?人员数组还是单个人员对象?再解释一点,分享你的服务器端代码仍然未定义可能是你有多个表#相同的idpeople是一个数组。“people.name”将是未定义的。您应该访问以下内容:人员[0]。名称。或者使用循环,因为我在帖子中发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换然后发送到我的服务器,读取下一行,项目将被替换然后发送到我的服务器仍然未定义可能是您有多个表具有#相同的idpeople是一个数组。“people.name”将是未定义的。您应该访问以下内容:人员[0]。名称。或者使用循环,因为我在帖子中发现了一些错误。这是我的错。。我想要的是每一行,项目将被替换然后发送到我的服务器,读取下一行,项目将被替换然后发送到我的服务器