Pregunta

Tengo una lista dinámica de los elementos que se utilizarán para publicar información en el servidor usando AJAX.

<a href="...">Item 1</a>
<a href="...">Item 2</a>
<a href="...">.....</a>
<a href="...">Item n</a>

He decidido incluir una clase CSS y un campo oculto en cada artículo para que pueda asignar fácilmente el controlador (utilizando la clase CSS) y para que pueda conocer el ID del tema (utilizando el campo oculto) .

<a href="..." class="recorditem"><input type="hidden" value="1" name="ItemID"/>Item 1</a>
<a href="..." class="recorditem"><input type="hidden" value="2" name="ItemID"/>Item 2</a>
...
<a href="..." class="recorditem"><input type="hidden" value="n" name="ItemID"/>Item n</a>

A continuación, con jQuery, voy a interceptar el clic en el enlace (que sería ir a una página para los usuarios no javascript) para hacer un POST. Lo que se verá algo como esto:

 $("a.recorditem").click(function(){
        //get the item ID
        var itemID = $(this + " :input[name='ItemID']").val(); <-- PROBLEM

        //build a form dynamically - omitted for readability
        var formToAdd = "<input type='text'.... "
        //etc etc...
    });

A excepción, no puedo por la vida de mí encontrar la manera de extraer el valor del campo de entrada oculto desde el enlace en su interior.

¿Qué estoy haciendo mal? Mejor aún, ¿Es esto una forma inteligente de hacer esto para una lista dinámica?

¿Fue útil?

Solución

No estoy seguro si un campo oculto es válido en un ancla (W3C) ... Nunca lo intentó.

¿Funciona el follwoing

var itemID = $(this).children().eq(0).val();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top