Ongedefinieerd identiteitsbewijs voor kinderen

plezierige instellingen

$('.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   : '',
    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>

Hoe kan ik de ID $ data ['id'] verkrijgen in jeditable loadurl ? Ik gebruik jQuery 1.6.2. De dataset heeft ongeveer 1.200 rijen.

1

1 antwoord

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   : '',
    style       : 'display: inline'
});

Ik zie dat het tweede argument van .editable() een object is en geen functie , dus this zal niet werk hier. U moet de code id eerder opslaan en gebruiken in de .editable() -configuratie.

Volgens commentaar

Ik denk dat uw hele code zich binnen de klik() handler bevindt en u moet gebruiken

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

om de huidige klik op id te krijgen.

2
toegevoegd
Bedankt voor het antwoord. Dit werkt. Als u echter op een nieuwe rij klikt, wordt de vorige $ gegevens ['id'] weergegeven. Is er een manier om te voorkomen dat deze de laatstgeklikte id opnieuw gebruikt? Bedankt thecodeparadox.
toegevoegd de auteur Kyle, de bron
Nogmaals bedankt thecodeparadox. Ik was bang om de plug-in te bewerken omdat ik niet bekend ben met jquery-plug-ins, het ziet er eng uit. Ik ben het nu aan het bewerken en heb je fix toegepast op de relevante locatie. Het werkt nu allemaal. Dit is fijn. =) jQuery is verwarrend Dank u voor uw inspanningen thecodeparadox.
toegevoegd de auteur Kyle, de bron
@Kyle moet de vorige gegevens bevatten, omdat id deze heeft opgeslagen met .editable (). Find ..
toegevoegd de auteur thecodeparadox, de bron