Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
Can';t使用Jquery更新HTML元素_Jquery_Google Maps - Fatal编程技术网

Can';t使用Jquery更新HTML元素

Can';t使用Jquery更新HTML元素,jquery,google-maps,Jquery,Google Maps,正在开发地图应用程序,这让我抓狂。这项工作: var myBounds = map.getBounds(); $("#bounds").html("My bounds are: " + myBounds); 但这只是显示空白: var myBounds = map.getBounds(); $("#bounds").html(myBounds); Chrome中没有控制台错误。Jquery似乎不喜欢map.getBounds()的返回值,在本例中,它是类似于(34.7167986633640

正在开发地图应用程序,这让我抓狂。这项工作:

var myBounds = map.getBounds();
$("#bounds").html("My bounds are: " + myBounds);
但这只是显示空白:

var myBounds = map.getBounds();
$("#bounds").html(myBounds);
Chrome中没有控制台错误。Jquery似乎不喜欢map.getBounds()的返回值,在本例中,它是类似于(34.71679866336405,-9.207592500000032),(38.42994070565381,-0.06696750000003249))的Google地图边界

这里怎么了

更新: 奇怪的是,这也行:

var myBounds2 = '((34.71679866336405, -9.207592500000032), (38.42994070565381, -0.06696750000003249))';
$("#bounds").html(myBounds2);
的返回值不是字符串,而是
LatLngBounds
对象。显然,将对象直接传递到
html
中是行不通的——这很公平,不会记录它接受对象,只是字符串。我有点惊讶它没有在上面调用
toString
,但显然不是

由于将其转换为字符串是有效的(这是您在将其附加到字符串时所做的操作),因此只需将其传递到
string
函数即可:

var myBounds = map.getBounds();
$("#bounds").html(String(myBounds));
// ---------------^^^^^^^--------^

对于这样的问题,包含一个可运行的使用堆栈片段(工具栏按钮)通常很有用。将文本添加到.html()中似乎会迫使Jquery或JS计算var myBounds?问题末尾的位并不奇怪;如果它不这样做,那会很奇怪。我也很惊讶看到这一点,也很惊讶我自己没有遇到这个问题。该函数接受一个字符串或一个
append
可以处理的对象,我想这可能是一个DOM节点或一个jQuery对象。我还认为将对象的返回值传递给变量
var myBounds=map.getBounds()
会自动将其字符串化。我接受了这个答案,但它仍然没有回答当我在
.html()
中包含一些文本时为什么它会按预期工作的问题,但不是没有<代码>$(“#边界”).html(“我的边界是:“+myBounds”)OK
$(“#bounds”).html(myBounds)
不正常`@silkfield:是的,它是:
“我的边界是:”+myBounds
在连接操作期间将
myBounds
转换为字符串。这就是“因为将其转换为字符串是有效的(当您将其附加到字符串时,您就是这么做的)”的意思。