[英]Javascript Function Accepting PHP Variables
我正在完全空白,为什么这不起作用。 我可以通过一个变量来做到这一点,但不是两个。 当我实际使用像getnt(1,2)
这样的数字时,它会起作用。 它只是不适用于两个 PHP 变量。
<script type="text/javascript">
function getnt(nid,pnid) {
window.location = "nt.php?nid=" + nid + "&pnid=" + pnid;
}
</script>
<body>
<?php
echo "<a href='#' onclick='getnt($nid,$pnid)'>VIEW</a>";
?>
</body>
我可以使代码使用echo "<a href='nt.php?nid=$nid&pnid=$pnid'>VIEW</a>";
,但是如果我想添加警报和 javascript 命令,那就不好了。
你总是可以尝试:
<script type="text/javascript">
function getnt(nid,pnid) {
window.location = "nt.php?nid=" + nid + "&pnid=" + pnid;
}
</script>
<body>
<a href="#" onclick="getnt(<?php echo $nid; ?>,<?php echo $pnid; ?>)">VIEW</a>
</body>
如果 ID 和 pnID 是字符串,请用这样的括号将它们括起来。
<body>
<?php
echo "<a href='#' onclick=\"getnt('$nid','$pnid')\">VIEW</a>";
?>
</body>
如果仍然无法正常工作,您可以调试您的代码
在 javascript function 中放一些警报信息。 如果您有 Firefox,请安装 Firebug 或查看
如果您收到任何 javascript 错误,请使用 JavaScript 控制台。
通过查看呈现的 HTML 源,您的问题可能得到最好的回答。
无论如何,这就是我使用优雅降级的方法
<script type="text/javascript">
function getnt(element) {
var href = element.href;
var nid = element.getAttribute("data-nid");
var pnid = element.getAttribute("data-pnid");
return true;
}
</script>
<p><a href="nt.php?nid=<?php echo $nid ?>&pnid=<?php echo $pnid ?>"
data-nid="<?php echo $nid ?>"
data-pnid="<?php echo $pnid ?>"
onclick="return getnt(this)">VIEW</a></p>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.