如何在 load() 中使用变量?
How to use a variable in load()?
我在 jQuery 文档中找到了这个 .load( url [, data ] [, complete ] )
。我写这个
$('#myModal .modal-body').load($(this).attr('href'));
然后加载 href 的完整 html。如果我这样写,也是一样
var modalUrl=$(this).attr('href');
$('#myModal.modal-body').load(modalUrl);
但是当我这样做的时候
$('#myModal.modal-body').load('/cms/myPage_1.html #content');
仅加载#content 之间的部分。这是我想要的。不幸的是,如果我将变量用作 url like
,那将不起作用
var modalUrl=$(this).attr('href');
$('#myModal.modal-body').load('modalUrl #content');
或
$('#myModal.modal-body').load(modalUrl #content);
或
$('#myModal.modal-body').load(modalUrl + '#content');
这可能吗?我不能使用固定的 url,因为站点上有不同的链接
感谢您的帮助
首先,这个解是不正确的,为什么?
$('#myModal.modal-body').load('modalUrl #content');
因为你跟语言解释这个变量是字符串,它不认识是很自然的
其次,这个解法不正确,为什么?
$('#myModal.modal-body').load(modalUrl #content);
因为您忘记了 + 号,请补充说明您没有将 id 放在双逗号内,如下所示:
$('#myModal.modal-body').load(modalUrl + "#content");
但是即使这样改革也行不通,为什么呢?看三个
三、这个方案乍一看好像是对的,其实不然,为什么?
$('#myModal.modal-body').load(modalUrl + '#content');
因为渲染 JavaScript 文件时浏览器中的最终结果是这样的:
$('#myModal.modal-body').load('/cms/myPage_1.html#content');
那么解决方法是什么?看四个
第四,试试这个解决方案
这里有两个解决方案
- 第一个解决方案
$('#myModal.modal-body').load(modalUrl + '' + '#content');
这里我们在变量和id之间做一个space
- 第二种解决方案
$('#myModal.modal-body').load(`${modalUrl} #content`);
在这里,我们使用``
类型的双逗号
这种双逗号的优点是它可以识别 spaces,不像原始的双逗号。
我在 jQuery 文档中找到了这个 .load( url [, data ] [, complete ] )
。我写这个
$('#myModal .modal-body').load($(this).attr('href'));
然后加载 href 的完整 html。如果我这样写,也是一样
var modalUrl=$(this).attr('href');
$('#myModal.modal-body').load(modalUrl);
但是当我这样做的时候
$('#myModal.modal-body').load('/cms/myPage_1.html #content');
仅加载#content 之间的部分。这是我想要的。不幸的是,如果我将变量用作 url like
,那将不起作用var modalUrl=$(this).attr('href');
$('#myModal.modal-body').load('modalUrl #content');
或
$('#myModal.modal-body').load(modalUrl #content);
或
$('#myModal.modal-body').load(modalUrl + '#content');
这可能吗?我不能使用固定的 url,因为站点上有不同的链接
感谢您的帮助
首先,这个解是不正确的,为什么?
$('#myModal.modal-body').load('modalUrl #content');
因为你跟语言解释这个变量是字符串,它不认识是很自然的
其次,这个解法不正确,为什么?
$('#myModal.modal-body').load(modalUrl #content);
因为您忘记了 + 号,请补充说明您没有将 id 放在双逗号内,如下所示:
$('#myModal.modal-body').load(modalUrl + "#content");
但是即使这样改革也行不通,为什么呢?看三个
三、这个方案乍一看好像是对的,其实不然,为什么?
$('#myModal.modal-body').load(modalUrl + '#content');
因为渲染 JavaScript 文件时浏览器中的最终结果是这样的:
$('#myModal.modal-body').load('/cms/myPage_1.html#content');
那么解决方法是什么?看四个
第四,试试这个解决方案
这里有两个解决方案
- 第一个解决方案
$('#myModal.modal-body').load(modalUrl + '' + '#content');
这里我们在变量和id之间做一个space
- 第二种解决方案
$('#myModal.modal-body').load(`${modalUrl} #content`);
在这里,我们使用``
类型的双逗号这种双逗号的优点是它可以识别 spaces,不像原始的双逗号。