在php echo中打印javascript变量

时间:2012-06-08 04:59:22

标签: php javascript variables

澄清:

我的回复声明如下:

 $striptitle .= ' - <a onclick="getnewurl();" href="'.SGLink::album($aid). '">'. $namek .'</a></h1>
<a href="https://twitter.com/share" class="twitter-share-button" data-lang="en" data-via="jb_thehot" data-text="Pictures of '. $hashfinal .'" teens>Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>';

echo $striptitle ;

onclick执行此操作:

<script type="text/javascript">
function getnewurl()
{
var url = document.URL;
alert( url );
}
</script>

我需要的是基本上添加我的锚标签data-url =“INSERT_VAR_URL_HERE”

这可能吗?

如果这还不够明确,请告诉我 谢谢!

编辑:澄清一下,该功能中的警报仅用于测试。我需要的是能够在同一$ striptitle变量中使用函数中获得的变量。

我的问题是网址随AJAX而变化,并且twitter按钮的data-url没有更新。我希望能够通过点击每次获取新网址来获取新网址。如果有其他方法可以做到这一点,我愿意接受建议!

2 个答案:

答案 0 :(得分:0)

为什么不将它作为参数传递?

$striptitle .= " - <a onclick=\"getnewurl('URL-HERE');\"...>";

然后在你的剧本中:

<script>
    function getnewurl(url) {
        alert(url);
    }
</script>

答案 1 :(得分:0)

基于@Kolink的回答,一种方法是不在两个地方重复网址,你可以生成以下链接:

<a onclick="getnewurl(this);" href="...">

然后你的JS看起来像:

function getnewurl(link) {
    link.setAttribute('data-url', location.href);
}

编辑显然jQuery.data没有正确更新dom,但是setAttribute没有