0

我有一个包含多行的表,其中一个行的单元格实现了 jquery datepicker 对象,我需要向我的 php 服务器类提交日期值(我已经能够)加上行 ID 值(我'我无法获得它)。

出于某种原因,带有“row_id”的行:$(this).closest('tr').attr(), 正在返回一个未定义的值。

这是使用的 jquery 脚本:

$.editable.addInputType('datepicker', {
         element: function(settings, original) {
            var input = jQuery('<input size=8 />');
            settings.onblur = function(e) {};       
            input.datepicker({
                dateFormat: 'yy-mm-dd',
                onSelect: function(dateText, inst) {
                   $.ajax({
                        type:"POST",
                        url:"editRecordDateSelector.php",
                        data: {"value": dateText, 
                               "row_id": $(this).closest('tr').attr(),
                           },

                    });
                },
                onClose: function(dateText, inst) {
                 $.ajax({
                        type:"POST",
                        url:"editRecordDateSelector.php",
                         data: {"value": dateText, 
                              "row_id": $(this).closest('tr').attr(),
                           },

                    });
                }
            });
            input.datepicker('option', 'showAnim', 'slide');
            jQuery(this).append(input);
            return (input);
        }
    });


    $('.editabledatepicker').editable(function(value, settings) {
        return (value);
    }, {
        type: 'datepicker',
        onblur: 'submit',
        tooltip: "Click to edit...."
    });

这是 datepicker 类包含在多行中的 HTML 代码:

<tbody>
    <tr id="1">
      <td id='rowId'>
        1
      </td>
      <td>
        <select name="custdrop" id="custdrop">
          <option value=2>
            Hemo
          </option>
          <option value=5>
            Lexpertise
          </option>
          <option value=7>
            MM
          </option>
          <option value=4>
            Patronato
          </option>
          <option value=6>
            Proovedora
          </option>
          <option value=8>
            RG
          </option>
          <option value=1>
            Rio
          </option>
          <option value=3>
            Servicios
          </option>
        </td>
        <td id='vals'>
          webosadfadsfadfadsf
      </td>
      <td id='vals'>
        yea
      </td>
      <td id ='datepickerval' class="editabledatepicker">
        2013-10-29
      </td>
        <td>
          <input type="checkbox" value ="sachk" id ="sachk">
      </td>
      <td>
        <input type="checkbox" value ="scpchk">
      </td>
      <td>
        <input type="checkbox" value ="mixchk">
      </td>
       <td>
          <input type="checkbox" value ="depsachk">
      </td>
      <td id='vals'>
        gfdgfdgfdgf
      </td>
      <td id='rowId' id = 'lineiteminactive'>
        Closed
      </td>
    </tr>
    <tr id="57">
      <td id='rowId'>
        2
      </td>
      <td>
        <select name="custdrop" id="custdrop">
          <option value=2>
            Hemo
          </option>
          <option value=5>
            Lexpertise
          </option>
          <option value=7>
            MM
          </option>
          <option value=4>
            Patronato
          </option>
          <option value=6>
            Proovedora
          </option>
          <option value=8>
            RG
          </option>
          <option value=1>
            Rio
          </option>
          <option value=3>
            Servicios
          </option>
        </td>
        <td id='vals'>

      </td>
      <td id='vals'>
        wqfasdfasdfo
      </td>
      <td id ='datepickerval' class="editabledatepicker">
        2013-10-10
      </td>
      <td>
          <input type="checkbox" value ="sachk" id ="sachk">
      </td>
      <td>
        <input type="checkbox" value ="scpchk">
      </td>
      <td>
        <input type="checkbox" value ="mixchk">
      </td>
      <td>
          <input type="checkbox" value ="depsachk">
      </td>
      <td>
        <input type="checkbox" value ="depscpchk">
      </td>
      <td id='rowId' id = 'lineitemactive' >
        Active
      </td>
    </tr>
  </tbody>
</table>

有人可以在这里帮助我吗?我会很感激的。

4

1 回答 1

1

可能是因为您的 .attr() 没有包含您要查找属性吗?尝试

"row_id": $(this).closest('tr').attr('id')
于 2013-10-12T01:08:47.970 回答