1

可编辑设置

$('.editable').editable('includes/notes/save.php', {
    loadurl     : 'includes/notes/load.php?id=' + $(this).find("div").prop("id"),//undefined child ID
    type        : 'text',
    onblur      : 'submit',
    indicator   : '<img src="includes/notes/indicator.gif">',
    style       : 'display: inline'
});

html

<tr class="items">
    <td>
        <?php echo $data['item_name']; ?>
    </td>

    <td>
        <div class="editable inventory-notes">
            <!-- need to get the child id below into jeditable -->
            <div id="<?php echo $data['id']; ?>">
                <div class="add_note"></div>
                <div class="edit_note"></div>
                <div class="delete_note"></div>
            </div>
        </div>
    </td>

</tr>

如何将 ID$data['id']转换为 jeditable loadurl?我正在使用 jQuery 1.6.2。该数据集大约有 1,200 行。

4

1 回答 1

2
var id = $('.editable').find("div:first").attr("id");

$('.editable').editable('includes/notes/save.php', {
    loadurl     : 'includes/notes/load.php?id=' + id
    type        : 'text',
    onblur      : 'submit',
    indicator   : '<img src="includes/notes/indicator.gif">',
    style       : 'display: inline'
});

我看到第二个参数.editable()是 anObject而不是 a Function,所以this在这里不起作用。您必须存储之前的内容并在配置中id使用它。.editable()

根据评论

我认为您的整个代码都在click()处理程序中,您需要使用

var id = $(this).find('div:first').attr('id');

获得当前点击id

于 2012-06-24T01:39:06.813 回答