1

jquery 1.10.2 を使用してプロジェクトを作成しています。

送信ボタンをクリックするとコメントが追加されます。JavaScript でコメントを作成します。

$(document).ready(function() {
    $("#enviar").on('click',function(){
        var texto=$("#comentarios").val();
        var fecha= new Date();
        var cruz= "<img class='eliminar' src='error.png'>"+"</img>";
        var fechaComentario= "<span class='fecha'>"+fecha.getHours()+":"+fecha.getMinutes()+":"+fecha.getSeconds()+"</span>";
        var divComentarioEscrito= "<div class='comentario-enviado'>";
        var divCompleto= divComentarioEscrito+fechaComentario+"   "+texto+"   "+cruz+"</div>";
            $("#comentarios-escritos").prepend(divCompleto);
    });
    $(".eliminar").on('click',function(){
       alert("DELETEEEE");
    });
});

「DELETEEE」というアラートを受け取りたいのですが、うまくいきません。

.livejquery関数を使用しようとしましたが、うまくいきませんでした。

私に何ができる?

ありがとう。

4

2 に答える 2

0

ページが読み込まれた後に要素を追加しているため、委任されたイベント ハンドラーを使用する必要があります。これを試して:

$(document).ready(function() {
    $("#enviar").on('click',function(){
        var texto = $("#comentarios").val();
        var fecha = new Date();
        var cruz = "<img class='eliminar' src='error.png'></img>";
        var fechaComentario = "<span class='fecha'>" + fecha.getHours() + ":" + fecha.getMinutes() + ":" + fecha.getSeconds() + "</span>";
        var divComentarioEscrito = "<div class='comentario-enviado'>";
        var divCompleto = divComentarioEscrito + fechaComentario + "   " + texto + "   " + cruz + "</div>";
        $("#comentarios-escritos").prepend(divCompleto);
    });

    // Note the amended selector here...
    $("#comentarios-escritos").on('click', '.eliminar', function(){
       alert("DELETEEEE");
    });
});

また、大量の文字列を作成して追加する代わりに、jQuery を使用して DOM を操作できます。

$("#enviar").on('click', function() {
    var $div = $('<div />', { "class": "comentario-enviado" }).prependTo("#comentarios-escritos");
    var fecha = new Date();
    $div.append($('<span />', { "class": "fecha", "text": fecha.getHours() + ":" + fecha.getMinutes() + ":" + fecha.getSeconds() });
    $div.append($("#comentarios").val());
    $div.append($('<img />', { "class": "eliminar", "src": "error.png" });
});
于 2013-11-02T13:12:10.920 に答える
0

これを試すことができますか?

 $('#comentarios-escritos').on("click","img", function (e) {
      e.preventDefault();
      alert('DELETEEEE');
 });
于 2013-11-02T13:15:48.387 に答える