Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从链接获取javascript中的变量_Php_Javascript - Fatal编程技术网

Php 从链接获取javascript中的变量

Php 从链接获取javascript中的变量,php,javascript,Php,Javascript,我试图通过javascript发送一个PHP变量,但遇到了问题。我使用的是我在网上找到的jQuery弹出窗口,当用户单击某个项目时,我需要在我要添加表单的弹出窗口中获取该项目的id变量 我的PHP部分 <a href="#?w=500&item_id='.$stock['id'].'" rel="popup1" class="poplight"> ”); //定义中心对齐的边距(垂直+水平)-我们将高度/宽度增加80,以适应css中定义的填充+边框宽度 var popMar

我试图通过javascript发送一个PHP变量,但遇到了问题。我使用的是我在网上找到的jQuery弹出窗口,当用户单击某个项目时,我需要在我要添加表单的弹出窗口中获取该项目的id变量

我的PHP部分

<a href="#?w=500&item_id='.$stock['id'].'" rel="popup1" class="poplight">
”);
//定义中心对齐的边距(垂直+水平)-我们将高度/宽度增加80,以适应css中定义的填充+边框宽度
var popMargTop=($('#'+popID).height()+80)/2;
var popMargLeft=($('#'+popID).width()+80)/2;
document.getElementById('popup1')。innerHtml=itemID;
//将边距应用于弹出窗口
$('#'+popID).css({
“页边距顶部”:-popMargTop,
“左边距”:-popMargLeft
});
//淡入背景
$('body')。追加('')//将淡入淡出层添加到主体标记的底部。
$('#fade').css({'filter':'alpha(不透明度=80)}).fadeIn()//淡入淡出层
返回false;
});
//关闭弹出窗口和淡入层
$('a.close,#fade').live('click',function(){//单击关闭或淡入淡出层时。。。
$('#淡入,.popup#u块')。淡出(函数(){
$(“#淡入,a.close”).remove();
});//把它们都淡出
返回false;
});
});

我添加了我认为您可以工作的内容,但它没有
var itemID=dim[0].split('=')[2]//获取第二个查询字符串值
document.getElementById('popup1')。innerHtml=itemID

使用复杂的函数检索URL查询参数:

function getParameterByName(name, locationObject)
{
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regexS = "[\\?&]" + name + "=([^&#]*)";
  var regex = new RegExp(regexS);
  var results = regex.exec(locationObject.search);
  if(results == null)
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
[通过日期]

简单地说:

getParameterByName('item_id', someLink);  

工作小提琴:

您在原始代码中有一个简单的疏忽。。 当您获取
dim
变量时,您将得到一个数组,其中有两个项在&处拆分。在上面的代码中,您得到
[“w=500”,“item\u id=some\u value”]
。因此,为了获得item id,您必须使用dim[1]。
var itemID=dim[1]。拆分('=')[1]

好的,我把它放到函数文件中,并试图在这里调用它。回显'getParameterByName(\'item\u id\');购买物品“$Item_id.”是物品id。希望如此;但是它没有做任何事情。@user1888260看看这个函数,我编辑了它。示例调用也被编辑。编辑:抱歉,您只需要传递链接本身。再次编辑。好吧,我想我想问的是,我能做什么在弹出式HTML中以文本格式返回该值?@user1888260我不太明白你想要什么。你想在弹出窗口中显示查询参数吗?是的,假设项目_id=2,我希望它在弹出窗口中显示HTML,但到目前为止,我不知道如何从URL中提取它并得到它,因为你点击链接,弹出窗口出现,URL没有变化。到底什么不起作用?你看过你的调试器了吗?有没有可能,
#popup1
不存在?啊,谢谢,我把它附加到了弹出窗口中。像so$('#popup1').append(itemID);但我真的需要它能够以一种形式获取。也许我可以把表格附加到末尾?
getParameterByName('item_id', someLink);