如何在jquery中获取特定的行id

时间:2013-05-03 05:42:06

标签: jquery

我有一个包含4列的网格:

  1. 名称
  2. 数量
  3. 费用
  4. 总费用
  5. 这4个NameCost来自数据库,Quantity是文本字段。当我们在文本字段中输入值时,它应该转到java并执行Quantity * Cost并填充totalcost。这是我的要求。为此,我使用以下代码:

    在我的jsp中,我有一个像这样的容器:

    <div id="search-results-list" class="green-results-list" style="height: 150px; width: 697px;">
    </div>
    Handler.setupGrid();
    

    在setupGrid的js文件中,我有以下几行代码。

    setupGrid : function() {
    
            $('.green-results-list').html('');
            $.post('note.json', 'action=get-grid-data', function(obj) {
                var data = obj.result.data;
                if(data !== undefined){
                    if(data.length>0) {
                        var rowstr = '';
                        for(var x=0;x<data.length;x=x+1) {
                            rowstr=rowstr+'<div class="ui-content report-content">';
                            rowstr=rowstr+'<div class="report-body" style="width: 697px;height: 50px;">';
                            rowstr=rowstr+'<div class="report-body-column2 centered" style="height: 41px; width: 150px">'+data[x].name+'</div>';
                            rowstr=rowstr+'<div class="report-body-column2 centered" style="height: 41px; width: 150px">'+'<input type = "text"  class="quantity" size=10px>'+'</div>';
                            rowstr=rowstr+'<div class="report-body-column2 centered" style="height: 41px; width: 150px">'+data[x].cost+'</div>';
                            rowstr=rowstr+'<div class="report-body-column2 centered" style="height: 41px; width: 150px">'+data[x].totalCost+'</div>';
                            rowstr=rowstr+'</div></div>';
                            }
                        $('.green-results-list').append(rowstr);
    
                    } else {
                    $('.green-results-list').html('<div class="success-msg">No Data Exist.</div>');
                }
            }else {
                $('.green-results-list').html('<div class="success-msg">No Data Exist.</div>');
            }
        });
    
        }
    

    当我在文本字段中输入值时,我使用以下代码行获取文本字段值:

    $('.quantity').live("blur",function(){
        var data = $(this).val();
        alert(data);
     });
    

    使用这个我得到文本字段值。 但我的问题是当我将值输入到该特定行的文本字段totalCost时才需要生效。

    我该怎么做?任何帮助将不胜感激。

    谢谢你,抱歉我的英语不好。我希望你能理解我的问题。

1 个答案:

答案 0 :(得分:0)

您可以使用closest()功能找到'row',例如

var $row = $(this).closest("div");

<强> UPD:

使用text()或使用html()函数

的HTML获取div的文本
var text = $row.text();
var html = $tow.html();

我建议你先学习基础知识。例如,来自Try jQuery截屏视频。