在小型操作仪表板的自定义天气页面上工作。 getweather#.php
擦除我想要的天气信息,然后index.php使用jQuery按需加载特定元素。
所以 - 我试图让jQuery检查外部页面上是否存在特定的DIV,如果存在,则加载它,但如果没有,则加载另一个始终存在的DIV
基于我在这里找到的其他问题,我把这段代码放在一起,认为它会起作用:
<script>
$(function(){
if ($('getweather2.php?wx=1 #warning').is('*')) {
$('#wxwarning').load('getweather2.php?wx=1 #warning');
} else {
$('#wxwarning').load('getweather2.php?wx=1 #nowarning');
}
});
</script>
遗憾的是,这似乎不起作用,而且,它会导致所有其他jQuery函数失败。
我似乎无法找到任何示例或任何真正帮助我使这个脚本工作的东西。
谢谢。答案 0 :(得分:0)
在检查元素是否存在之前,您必须实际获取数据
您不能使用load()
,因为它直接插入数据,但它只是$.get
的快捷方式,因此您可以使用它,并检查元素是否存在,以及是否插入,如果没有插入另一个元素:
$.get('getweather2.php?wx=1', function(html) {
var el = $('<div />').append(html);
if ( el.find('#warning').length ) {
$('#wxwarning').html(el.find('#warning'));
}else{
$('#wxwarning').html(el.find('#nowarning'));
}
});