2013-10-06 3 views
0

Простите меня, если это простой вопрос, но я своего рода новичок в JQuery/Javascript. Я хотел бы знать, как я могу добавить изображение и комментарий одновременно с одним нажатием клавиши ввода. Что я имею в виду: пользователь вводит комментарий в текстовом поле, попадает в него и его комментарий появляется в div вместе с именем пользователя. Я хочу, чтобы изображение профиля, соответствующее этому пользователю, также появилось, а также возможность оценивать или любить комментарий. То, что я получил до сих пор имеет следующий вид:JQuery/Javascript: добавление изображений и текста динамически

$(document).ready(function() { 
    $('.comment').keyup(function(e) { 
     if (e.keyCode == 13){ 
      var post_id = $(this).attr('post_id'); 
      var comment = $(this).val(); 
      $(this).val(''); 
      $.post('../php_includes/comment.php', {post_id: post_id, comment: comment}); 
      $(this).parent().children('.comments').append("<div class='view'><?php echo $_username;?> remarks: " + comment + "</div>");  
     } 
    }); 
}); 

Это работает. В div появится «view»: примечание пользователя: комментарий. Однако, когда я делаю это:

$(document).ready(function() { 
    $('.comment').keyup(function(e) { 
     if (e.keyCode == 13){ 
     var post_id = $(this).attr('post_id'); 
     var comment = $(this).val(); 
     $(this).val(''); 
      $.post('../php_includes/comment.php', {post_id: post_id, comment: comment}); 
     $(this).parent().children('.comments').append("<div class='view'><?php echo $vis_pic;?><?php echo $_username;?> remarks: " + comment + "</div>");  
     } 
    }); 
}); 

($ vis_pic, содержащий путь к юзерпика) ничего не происходит - это даже не ясно текстовое поле. Я попытался добавить, добавить, объявить html в переменной - он просто не хочет его есть. Кроме того, когда я добавляю переменную php для отображения скорости и любимых параметров после добавления комментария, он ничего не делает. Это сводит меня с ума, когда я пробирался по всему Инет пару дней, и ничего не работает. Опять же, извините, если это простой вопрос. Заранее благодарю вас за ваши усилия.

+0

Вместо того, чтобы показывать код php, вы должны показать результат его оценки. Я думаю, проблема состоит в том, что '$ vis_pic' содержит кавычки, которые вы должны убежать. – Oriol

+0

Это содержимое $ vis_pic: $ vis_pic = ""; –

ответ

0

Вместо того, чтобы показывать код php, вы должны показать результат его оценки. Я думаю, что проблема в том, что $vis_pic содержит двойные кавычки, вы должны бежать:

<?php echo str_replace('"', '\"', $vis_pic); ?> 

Может быть, вы могли бы также использовать addslashes

Edit:

Вы говорите, что $vis_pic содержит

$vis_pic ="<img class=\"commentpic\" src=\"../user/$_userv/mini_profilepic.jpg\">"; 

Проблема заключается в том, что вы избежали цитат для php, но когда вы используете echo $vis_pic, php не печатает \, поэтому ваш код будет следующим:

.append("<div class='view'><img class="commentpic" src="../user/[userv]/mini_profilepic.jpg"> remarks: " + comment + "</div>"); 
+0

Прохладный, я попробую это - спасибо! –

+0

Да! Это сработало! Большое вам спасибо, Ориол! –

Смежные вопросы