Получение идентификатора с помощью jquery для jeditable - PullRequest
1 голос
/ 06 февраля 2012

Я создавал сайт и сейчас работаю над его администрированием, чтобы пользователи могли легко управлять, легко модифицировать статьи и т. Д. Я хотел использовать jeditable, чтобы администратор был действительно простым в использовании.

Часть JEditable работает (теги p становятся входными данными), однако у меня возникают проблемы с отправкой идентификатора продукта через запрос ajax.

Вот 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'
        });
    });

Как вы можете видеть, я получаю идентификатор текущей строки, когда курсор мыши над (что я хотел бы избежать), однако, когда я отправляю страницу, идентификатор не устанавливается в jeditable url.

Кто-нибудь знает, как это можно отсортировать, как я хотел бы использовать редактор на местедля административной панели?

Как необязательный запрос, как я могу получить класс tr, окружающий ввод, по которому щелкнули?Я пробовал что-то вроде $ (this) .parent (). Parent (). Attr ('class')

Спасибо, Дэн

1 Ответ

0 голосов
/ 06 февраля 2012

Вы пробовали (без функции наведения $(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'
    });
...