我一直在做一个网站,现在正在做它的管理部分,这样用户就可以轻松管理,文章也可以轻松修改等等。我想使用jeditable,这样管理员就很容易使用了。
JEditable的一部分正在工作(p标记正在成为输入),但是我在通过ajax请求发送产品的id时遇到了问题。
以下是我目前拥有的html代码(由php生成):
<table class="admin_list">
<tr>
<th style="width: 110px;">First Name</th>
<th style="width: 110px;">Last Name</th>
<th style="width: 100px;">Date of Birth</th>
<th style="width: 200px;">Email</th>
<th style="width: 140px;">Address</th>
<th style="width: 112px;">Postal Code</th>
<th style="width: 112px;">Town</th>
<th style="width: 120px;">Country</th>
<th style="width: 115px;">Login</th>
<th style="width: 42px;">Action</th>
</tr>
<tr class="2">
<td><p class="editable">Another</p></td>
<td><p class="editable">User</p></td>
<td><p class="editable">11/11/1911</p></td>
<td><p class="editable">user@email.com</p></td>
<td><p class="editable">Address</p></td>
<td><p class="editable">56130</p></td>
<td><p class="editable">Town</p></td>
<td><p class="editable">2</p></td>
<td><p class="editable">bob</p></td>
<td>
<a href="http://localhost/monline/private_html/musiconline/?delete/user/2">D</a>
<a href="">U</a>
<a href="">D</a>
</td>
</tr>
<tr class="1">
<td><p class="editable">Daniel</p></td>
<td><p class="editable">Lucas</p></td>
<td><p class="editable">10/04/1990</p></td>
<td><p class="editable">dan@email.com</p></td>
<td><p class="editable">myAddress</p></td>
<td><p class="editable">12345</p></td>
<td><p class="editable">myTown</p></td>
<td><p class="editable">8</p></td>
<td><p class="editable">dan</p></td>
<td>
<a href="http://localhost/monline/private_html/musiconline/?delete/user/1">D</a>
<a href="">U</a>
<a href="">D</a>
</td>
</tr>
</table>
<input type="text" class="edit_id" value="" />
这是我写的jquery:
$( function() {
$('.admin_list tr').hover( function() {
$('.edit_id').attr( 'value', $(this).attr('class') );
});
$('.editable').editable("http://localhost/monline/private_html/musiconline/?admin/edit/users/" + $('.edit_id').attr('value'), {
indicator : 'Saving...',
onblur : 'submit',
method : 'PUT'
});
});
正如你所看到的,当鼠标悬停在我上面时,我得到了当前行的ID(我想避免),但是当我提交页面时,ID没有在可编辑的url中设置。
有人知道如何排序吗,因为我想在管理面板中使用一个在位编辑器?
作为一个可选的请求,我如何获得围绕被点击的输入的tr类?我已经尝试了一些类似于$(this).Pparent().Prent().attr('class')的东西
谢谢Dan
是否尝试过(如果没有悬停功能,$(this).closest('tr').attr('value')
应该指向相对的<tr>
)
$('.editable').editable("http://localhost/monline/private_html/musiconline/?admin/edit/users/" + $(this).closest('tr').attr('value'), {
indicator : 'Saving...',
onblur : 'submit',
method : 'PUT'
});