Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
无法将id发送到javascript函数_Javascript_Jquery - Fatal编程技术网

无法将id发送到javascript函数

无法将id发送到javascript函数,javascript,jquery,Javascript,Jquery,我有一个iframe,我只想在单击超链接时显示它。iframe有一个我正在使用选择器获取的特定id。 当我在javascript函数中指定iframe的id时,它工作得很好,但是当我试图从超链接中的函数调用传递id时,我没有得到响应 这很有效 <a href="#" onclick="expandMap();"><h3>Map 1</h3></a> <iframe id="myiFrame" data-src="https://map.emb

我有一个iframe,我只想在单击超链接时显示它。iframe有一个我正在使用选择器获取的特定id。 当我在javascript函数中指定iframe的id时,它工作得很好,但是当我试图从超链接中的函数调用传递id时,我没有得到响应

这很有效

<a href="#" onclick="expandMap();"><h3>Map 1</h3></a>
<iframe id="myiFrame" data-src="https://map.embed.url" width="100%;" 
height="700px" src="about:blank">
</iframe>

<script>
function expandMap() {
   map = $("#myiFrame");
   map.attr("src", map.data("src"));
}
</script>

函数expandMap(){
map=$(“#myiFrame”);
map.attr(“src”,map.data(“src”);
}

这不是

<a href="#" onclick="expandMap("#myiFrame");"><h3>Map 1</h3></a>
<iframe id="myiFrame" data-src="https://map.embed.url" width="100%;" 
height="700px" src="about:blank">
</iframe>

<script>
function expandMap(id) {
   map = $(id);
   map.attr("src", map.data("src"));
}
</script>

功能图(id){
map=$(id);
map.attr(“src”,map.data(“src”);
}

我做错什么了吗?

你需要检查你的报价。不能在双引号中包含未转义的双引号。您可以使用单引号:

<a href="#" onclick="expandMap('#myiFrame');">

$(函数(){
$('.expandMap')。单击(函数(){
var frame=$(this.data('frame');
map=$(帧);
map.attr(“src”,map.data(“src”);
});
});

您需要检查您的报价。不能在双引号中包含未转义的双引号。您可以使用单引号:

<a href="#" onclick="expandMap('#myiFrame');">

$(函数(){
$('.expandMap')。单击(函数(){
var frame=$(this.data('frame');
map=$(帧);
map.attr(“src”,map.data(“src”);
});
});

您正在关闭函数调用中的双引号:

onclick="expandMap("#myiFrame");"
应该是:

onclick="expandMap('#myiFrame');"

您正在关闭函数调用中的双引号:

onclick="expandMap("#myiFrame");"
应该是:

onclick="expandMap('#myiFrame');"

谢谢这是一个很好的解决方案,我没有意识到使用内联javascript事件处理程序是不好的做法。但是,代码中有一个语法错误。您忘了关闭最后一个括号,并在末尾添加分号。@马特:我不知道内联处理程序本身是否糟糕,我只是不喜欢使用它们。使用JavaScript绑定事件更强大:-)谢谢!这是一个很好的解决方案,我没有意识到使用内联javascript事件处理程序是不好的做法。但是,代码中有一个语法错误。您忘了关闭最后一个括号,并在末尾添加分号。@马特:我不知道内联处理程序本身是否糟糕,我只是不喜欢使用它们。使用JavaScript绑定事件更强大:-)