Talvez no fui muy claro tengo el siguiente codigo:
Código:
$(document).on('keypress', '#fieldEmpty', function(event) {
if ( event.which == 13 ) {
event.preventDefault();
var idPublication = $(this).parent().attr('data');
var Comment = $("textarea#fieldEmpty").val();
if (Comment.length==0) {
alert("¡Vamos llena el campo no puede estar vacio!");
Comment.focus();
return false;
}
var User = $("input#setUserComment").val();
var dataString = 'Comment='+ Comment +'&idPublication=' + idPublication;
$.ajax({
type: "POST",
url: "addComent.php",
data: dataString,
success: function(data, textStatus, XMLHttpRequest) {
var respuesta = '<div class="section-comments">'+
'<div class="box-photo-profile-comment">'+
'<img src="Topic/images/T_Profile.png" width="35" height="35" />'+
'</div>'+
'<div class="samplebook-comment">'+
'<a href="profile.php" class="name-profile-comment">'+User+'</a>'+ '<a class="body-comment">'+' '+Comment+'</a>'+
'</div>'+
'<div class="actions-comment">'+
'<a class="comment-like">'+'Me Gusta'+'</a>'+' '+'Hace 2 minutos'+
'</div>'+
'</div>';
$("#Comment-reply").append(respuesta);
$('#addComment').each (function(){
this.reset();
});
}
});
return false;
}
});
que basicamente lo que hace es enviar, validar y limpiar un formulario este lo uso para un sistema de comentarios de una noticia, mi problema esque simpre me marca que el campo esta vacio, amenos que envie el comentario de la primera noticia, a lo que llegue a la conclusion como hay varias noticias y varios campos para llenar un comentario, y logicamente todos tienen el mismo id pues este codigo me le el campo de la primera noticia que encuentra.
La solucion que me implemente fue usar (this) en $("textarea#fieldEmpty").val() pero como tengo entendido para usar (this) el id debe ser unico pues es la razon por la cual no puedo solucionarla ¿talvez si uso un atributo data en vez de id? como podria hacerlo Gracias.
en conclusion necesito usar (this) en $("textarea#fieldEmpty").val() atravez de un data en lugar de id.