使用php变量+javascript变量创建一个href-url


Create a href url with php variable + javascript variable

我正在使用Mysql+PHP循环创建链接,但我需要在url href中添加一个javascript var,如:

javascript变量在jquery cookie中:$.cookie('limit')

urls.php

<a href='page.php?id=1&limit=$.cookie('limit')'>1</a>
<a href='page.php?id=2&limit=$.cookie('limit')'>2</a>
<a href='page.php?id=3&limit=$.cookie('limit')'>3</a>

在这种情况下,将javascript var放入隐藏输入中是不起作用的。

在我的page.php中,我需要在mysql查询中同时使用vars(id和limit)。因此,将这个javascript var插入page.php的隐藏输入中。无论如何,php都无法工作。

我试图从href-url中删除限制var,并将其添加到我的page.php上,但没有成功:

if(!empty($_REQUEST['limit']){
    $_REQUEST['limit'] = "<script type='text/javascript'>document.write($.cookie('limit'))</script>";
}

您没有将变量正确地放入php中。使用您的代码,您只需在字符串中写入limit。您需要将变量连接到这样的字符串:

if(!empty($_REQUEST['limit']){
    $limit = "<script type='text/javascript'>document.write('".$_REQUEST['limit']."')</script>";
}

如果限制被传递到您正在构建链接的页面中,那么您可以像前面提到的那样通过$_REQUEST变量获取该数字。然后,您可以在该页面的逻辑中编写一个for循环,以创建所需数量的链接。在这个循环中,你可以构建这样的东西来将url回声到页面上:

echo "<a href='page.php?id={$i}&limit=jscriptVar'>{$i}</a>"

将链接更改为:

<a href='page.php?id=1' class='changeMe'>1</a>
<a href='page.php?id=2' class='changeMe'>2</a>
<a href='page.php?id=3' class='changeMe'>3</a>

添加这样的javascript:

$(document).ready(function(){
    $('a[class="changeMe"]').each(function(){
        var newHref = $(this).attr("href") +"&limit="+ $.cookie('limit');
        $(this).attr("href", newHref);
    });
});