如何获取属性的当前值

时间:2014-03-20 11:23:51

标签: javascript jquery

我有一个从数据库中获取数据的表,每列包含一个按钮,用于在模态框中查看该特定行,模式框包含下一个和上一个按钮,下一个给出下一行表和之前行的详细信息给出该行的先前数据。现在我的问题是:

我只能做一次吗?

 $('#review_essay').delegate('.navBtn', 'click', function () {
     var current_row_id = $(this).parents('#review_essay').attr('current_row_id');
     var position_value = $(this).attr('position_value');
     var navValue = parseInt(current_row_id) + parseInt(position_value);
     alert(current_row_id)
     alert(position_value)
     alert(navValue)
     var qid = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).attr('qid');
     alert(qid);
     var uid = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).attr('uid');
     var paper_id = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).data('paper_id')
     var session_id = $('#exam_details').attr('session_id')
     var exam_id = $('#exam_details').attr('exam_id')
     //alert('reached');
     navigate(exam_id, session_id, paper_id, qid, uid);
 });

它不会执行多次。 current_row_id将保持0

1 个答案:

答案 0 :(得分:0)

我看到的一个问题是您没有更新current_row_id,因此请将其更新为navValue

$('#review_essay').delegate('.navBtn', 'click', function () {
    var current_row_id = $(this).parents('#review_essay').attr('current_row_id');
    var position_value = $(this).attr('position_value');
    var navValue = parseInt(current_row_id) + parseInt(position_value);
    alert(current_row_id)
    alert(position_value)
    alert(navValue)
    var qid = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).attr('qid');
    alert(qid);
    var uid = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).attr('uid');
    var paper_id = $('#essay_data').find('tbody').find('tr').eq(navValue - 1).data('paper_id')
    var session_id = $('#exam_details').attr('session_id')
    var exam_id = $('#exam_details').attr('exam_id')
    //alert('reached');
    navigate(exam_id, session_id, paper_id, qid, uid);

    //update the current_row_id to the new value
    $(this).parents('#review_essay').attr('current_row_id', navValue);
});