.load()无效 - jQuery

时间:2013-08-13 04:05:27

标签: javascript jquery

我有这样的代码:

$('#message').load('conversation.php?link=projects/living room/room');

当我运行此代码时,它在chrome中的错误控制台中显示"syntax error, unrecognised expression"

但如果我运行相同的代码:

$('#message').load('conversation.php?link=projects/livingroom/room');

这样可以正常工作。这两条线之间唯一的区别是,在第一条线上,工作区(起居室)有一个空间,而在第二条线上,单词(起居室)中没有空格。

这里发生了什么。为什么.load()在放置空格时显示错误,没有错误且没有空格?

1 个答案:

答案 0 :(得分:1)

如果@Matt Ball在上面的评论中指出,$.load()对您不需要的网址有特殊解释,那么我建议将$.load()替换为更符合要求的内容。在这种情况下,包含正确回调的$.get()更适合您的需求。

在这种情况下,很明显问题的一部分是包含空格的网址。

但是包含空格的URL部分位于数据参数中,为了更好的一致性和可靠性,应该将其作为参数提供给jQuery函数,而不是尝试自己从参数构造URL。

$.get('conversation.php',
   {link: 'projects/living room/room'}, 
   function(data){ $('#message').html(data) }
 );