我在html中使用php代码打印一些内容但是,当我试图点击那个div时它没有调用onClick中的函数?
这是我的PHP代码
echo '<div class="col-sm-12 col-xs-12 " ><div class="row ">';
echo '<div class="col-sm-10" onClick="openUrlInNewTab("'.$myarray['Job']['link'].'");"><h3>';
echo $myarray['Job']['title']."</h3></div></div></div>";
这是&#34;查看来源&#34;中的html代码。浏览器
<div class="col-sm-12 col-xs-12 ">
<div class="row " >
<div class="col-sm-10 " onClick="openUrlInNewTab("www.example.com");" >
<h3>Can you Code? </h3>
</div>
</div>
</div>
这是我在html页面中的功能
function openUrlInNewTab(url) {
// div click is not reaching here
alert(url);
window.open(url, "_blank");
}
答案 0 :(得分:8)
你应该使用单引号。
而不是
<div class="col-sm-10 " onClick="openUrlInNewTab("www.example.com");" >
你应该
<div class="col-sm-10 " onClick="openUrlInNewTab('www.example.com');" >
如果你在双引号中加上双引号,那么简单就行了。
所以在PHP中你应该改变:
echo '<div class="col-sm-10" onClick="openUrlInNewTab("'.$myarray['Job']['link'].'");"><h3>';
到
echo '<div class="col-sm-10" onclick="openUrlInNewTab(\''.$myarray['Job']['link'].'\');"><h3>';
修改强>
还有一件事。如果您希望在浏览器中打开此网址,则应该在http://
之前添加www.example.com
示例工作HTML代码:
<!DOCTYPE html>
<head>
<meta charset="utf-8" />
</head>
<body>
<div class="col-sm-12 col-xs-12 ">
<div class="row " >
<div class="col-sm-10 " onclick="openUrlInNewTab('http://www.example.com');" >
<h3>Can you Code? </h3>
</div>
</div>
</div>
<script>
function openUrlInNewTab(url) {
// div click is not reaching here
alert(url);
window.open(url, "_blank");
}
</script>
</body>
</html>
答案 1 :(得分:2)
onClick="openUrlInNewTab("www.example.com");"
应该是
onClick="openUrlInNewTab('http://www.example.com');"
在函数内使用单引号。
答案 2 :(得分:2)
onClick="openUrlInNewTab("www.example.com");"
应该是
onclick="openUrlInNewTab('http://www.example.com');"
其余的都很好
答案 3 :(得分:0)
你知道如何使用jQuery,对吗?
$(document).ready(function()
{
$('div').on('click', function()
{
alert('clicked!');
});
});
你可以点击div,但它很可能不会像你现在这样做,因为javascript和php的工作原理。 (我不认为那些noclicks会受到约束)