[英]PHP variable inside a javascript function
我試圖將php變量放入javascript函數中,但沒有運氣,這就是我得到的
<a class="code" href="javascript:void(0);"
onclick="javascript:if(window.dd && dd.elements)
d.elements.name1.moveTo(<? echo "$xpos"; ?>, <? echo "$ypos"; ?>);
return false;">
name1.moveTo(name1.x-20, name1.y+7);</a>
`
當我向它發送一個javascript變量或簡單數字時,moveTo()函數可以完美地工作。
它在php變量中的原因是因為我需要將xpos放在會話變量中才能在其他地方訪問。 之后我將其分配如下
$_SESSION['productcheck']['x'] = $xpos;
我有點陌生,如果您還沒有注意到的話,謝謝您:)
盡量不要使用雙引號。
echo $xpos;
這只是為了澄清,但您似乎有一個錯字( d
應該是dd
)。 更正:
<a class="code" href="javascript:void(0);"
onclick="return (function () {
if(window.dd && dd.elements)
dd.elements.name1.moveTo(<? echo $xpos; ?>, <? echo $ypos; ?>);
return false;
})()"
>
name1.moveTo(name1.x-20, name1.y+7);
</a>
一些問題:
$xpos
本身就可以 onclick
應該只有一個返回false的表達式,因此理想情況下,請將其包裝在其他函數中。 在這里我用一個匿名的 另外, onclick
不必以'javascript:
開頭,因為它已經是隱式的了。
我猜想在處理頁面的那部分時,xpos和ypos不在范圍內。
范圍是指括號。 例如以下將不起作用
$xpos = 100;
function printx(){
echo $xpos; // enclosing quotes not required
}
// call the function
printx();
什么都不會打印
要修復它,請使用以下命令
$xpos = 100;
function printx(){
global $xpos;
echo $xpos; // enclosing quotes not required
}
// call the function
printx();
然后將打印100
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.