Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery变量选择器语法错误,无法识别的表达式_Javascript_Jquery_Node.js_Socket.io - Fatal编程技术网

Javascript jQuery变量选择器语法错误,无法识别的表达式

Javascript jQuery变量选择器语法错误,无法识别的表达式,javascript,jquery,node.js,socket.io,Javascript,Jquery,Node.js,Socket.io,我想在收到nodejs消息后将html代码预编到DOM中 socket.on('new-message', function(message) { $(message).prependTo('#messages').hide().slideDown(); }); 我收到以下错误消息: 未捕获错误:语法错误,无法识别的表达式: 约翰的新消息 3月20日上午12:19 面向对象 如果我将变量包含在标记中,它会正常工作: $('<div>' + message + '<

我想在收到nodejs消息后将html代码预编到DOM中

socket.on('new-message', function(message) {
    $(message).prependTo('#messages').hide().slideDown();
});
我收到以下错误消息:

未捕获错误:语法错误,无法识别的表达式:

  • 约翰的新消息
    3月20日上午12:19 面向对象
  • 如果我将变量包含在标记中,它会正常工作:

    $('<div>' + message + '</div>').prependTo('#messages').hide().slideDown();
    
    $(''+消息+'').prependTo('#消息').hide().slideDown();
    

    谢谢您的帮助。

    您能显示
    消息的实际内容吗?jQuery似乎无法将其解析为HTML(您所期望的)或选择器。它似乎不是字符串,而是无法转换为有效HTML的对象。@inser:我相信,
    '+message+'
    。尝试使用
    $(“#messages”).prepend(…).hide().slideDown()代替。这两种方法都更容易理解,而且当消息变量出现问题时,jquery可能更容易理解。@pjehan:对。。执行如下操作:
    $(“#消息”).hide().prepend(…,function(){$(this.parent().slideDown();})。差不多吧。对不起,我有点漫不经心。希望它能有所帮助。
    
    $('<div>' + message + '</div>').prependTo('#messages').hide().slideDown();