本文介绍了表的使用jquery map函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个表:

 < table id =tblNyttUtstyr> 
< thead>
< tr>
< th data-field =UtlevertUtstyrID> UtstyrsID< / th>
< th data-field =UtstyrNavn> Navn< / th>
< th data-field =Utlevert> Utlevert< / th>
< th data-field =Comment> Kommentar< / th>
< / tr>
< / thead>
< tbody>
< tr>
< td> 1< / td>
< td>摩托罗拉defy +< / td>
< td> true< / td>
< / tr>
< tr>
< td> 3< / td>
< td> Samsung SII< / td>
< td> true< / td>
< / tr>
< / tbody>
< / table>

然后我有这个脚本



<$ p $ ($($ {code $ c $ var $ = $(this);

return {
UtlevertUtstyrID:$ row.find(:nth-​​child(1))。text(),
注释:$ row.find(:nth-​​child(2)) )
};
})。get();

$(#console)。text(content:+ test);

返回值如下:content:[object],[object]



任何人都知道如何获取值,文本而不是对象



谢谢

解决方案

.map返回一个jQuery对象。



你需要使用回调。
$ b

 函数setConsole(obj){
$(#console)。text(content:+ obj.Comment);


var test = $(#tblNyttUtstyr tbody tr)。map(function(){
var $ row = $(this);

setConsole({
UtlevertUtstyrID:$ row.find(:nth-​​child(1))。text(),
注释:$ row.find(:nth-​​child ))。text()
});

})。get();






更新:更改 setConsole 函数:

 函数setConsole(obj){
var c = $ (#安慰);
c.text(c.text()+content:+ obj.Comment);
}

否则每个新对象都将被覆盖。



请参阅我的演示:


I have this table:

    <table id="tblNyttUtstyr">
        <thead>
            <tr>
                <th data-field="UtlevertUtstyrID">UtstyrsID</th>
                <th data-field="UtstyrNavn">Navn</th>
                <th data-field="Utlevert">Utlevert</th>
                <th data-field="Comment">Kommentar</th>
            </tr>
        </thead>
<tbody>
<tr>
   <td>1</td>
   <td>Motorola defy+</td>
   <td>true</td>
</tr>
<tr>
   <td>3</td>
   <td>Samsung SII</td>
   <td>true</td>
</tr>
</tbody>
</table>

Then I have this script

var test = $("#tblNyttUtstyr tbody tr").map(function () {
            var $row = $(this);

            return {
                UtlevertUtstyrID: $row.find(":nth-child(1)").text(),
                Comment: $row.find(":nth-child(2)").text()
            };
        }).get();

        $("#console").text("content: " + test);

The return value are like this: "content: [object],[object]"

Anyone know howto get the values, the text instead of just object

Thanks

解决方案

.map returns a jQuery object.

You need to use callbacks.

    function setConsole(obj) {
        $("#console").text("content: " + obj.Comment);
    }

    var test = $("#tblNyttUtstyr tbody tr").map(function () {
        var $row = $(this);

        setConsole( {
            UtlevertUtstyrID: $row.find(":nth-child(1)").text(),
            Comment: $row.find(":nth-child(2)").text()
        } );

    }).get();


Update: change the setConsole function to this:

function setConsole(obj) {
    var c = $("#console");
    c.text(c.text() + "content: " + obj.Comment);
}

Or else every new object will just be overwritten.

See my demo here: http://jsfiddle.net/maniator/FrURX/

这篇关于表的使用jquery map函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-20 15:23