jQuery中$.fn.load方法中url带空格导致不能正常加载页面
今天同事碰到一奇怪现象,使用$('#....').load(url);加载一个页面,死活加载不出来,一直显示空白,而加载其他页面时显示是正常的,我帮他解决问题,好一通折腾,最终发现是因为url中带了一个空格,把空格去掉就能正常显示,加上空格就显示空白,最后查了一下jquery的api,发现load方法中的url里,空格是关键字,空格后面的字符串是选择器,用来选择加载页面中的元素,所以才出现页面上空白的情况,希望以后使用load方法时多做注意。
引用一下jquery的api文档:
加载页面片段
.load() 方法,与 $.get() 不同,允许我们规定要插入的远程文档的某个部分。这一点是通过 url 参数的特殊语法实现的。如果该字符串中包含一个或多个空格,紧接第一个空格的字符串则是决定所加载内容的 jQuery 选择器。
我们可以修改上面的例子,这样就可以使用所获得文档的某部分:
$("#result").load("ajax/test.html #container");
如果执行该方法,则会取回 ajax/test.html 的内容,不过然后,jQuery 会解析被返回的文档,来查找带有容器 ID 的元素。该元素,连同其内容,会被插入带有结果 ID 的元素中,所取回文档的其余部分会被丢弃。
相关推荐
tztzyzyz 2020-07-05
ppsurcao 2020-06-14
EdwardSiCong 2020-11-23
85477104 2020-11-17
hhanbj 2020-11-17
81427005 2020-11-11
seoppt 2020-09-13
honeyth 2020-09-13
WRITEFORSHARE 2020-09-13
84483065 2020-09-11
momode 2020-09-11
85477104 2020-08-15
83510998 2020-08-08
82550495 2020-08-03
tthappyer 2020-08-03
84901334 2020-07-28
tthappyer 2020-07-25
TONIYH 2020-07-22
tztzyzyz 2020-07-20