0

我有一个 jQuery 函数,它从数据库表中返回一行。当它显示在文本框中时,所有单词都会一起运行。例如: Everyonepleasebecarefulwhenleavingthebuilding。我想将单词分开阅读:Every one please be careful when leaving the building。这来自用户输入,因此用户单击他希望在文本框中显示的任何行。每行包含不同的数据。下面列出的代码是触发事件的代码:

$(document).ready(function() {
    $("table tr").click(function(){
        $("#txttread").val($(this).text());
    });
});

$(document).ready(function() {
    $('.pickme tr').not(':first').hover(
        function() { $(this).addClass('highlight'); },
        function() { $(this).removeClass('highlight'); }
    ).click( function() {
        $('.selected').removeClass('selected');
        $(this).addClass('selected').find('input').attr('checked','checked');
    });
});
4

2 回答 2

1

单击表格行时,循环遍历其表格单元格,将每个单词添加到数组中。最后,通过空格连接该数组并将其结果设置为输入字段的值:

​$("#statements").on("click", "tr", function(){
    var words = [];
    $("td", this).text(function(i,v){ words.push( v ); });
    $("#txtread").val( words.join(" ") );
});​​​​​​​​​​

小提琴:http: //jsfiddle.net/EXPBp/1/

于 2012-05-28T00:57:15.530 回答
0

您需要遍历每个单元格并分别获取其文本,而不是仅仅抓取该行的文本:

$(document).ready(function(){
  $("table tr").click(function(){
       $("#txttread").val($.map($(this).children('td'), function (item) { return $(item).text() }).join(' '));
  });
});

在http://jsfiddle.net/kSsYD/工作小提琴

于 2012-05-28T01:05:47.270 回答