javascript - 将值发送到 Javascript 函数以在元素中显示

标签 javascript overlay href

我有这个

<a href='#?title=sample&url=sample.com'></a>

在我放置的同一页上

$title = $_GET['title'];
$url = $_GET['url'];

但它不传递值。 代码有什么问题吗? 请帮忙!

注意: 我不想重新加载页面,这就是为什么我放了#,因为在后面的部分我将调用一个javascript函数onclick

这是函数调用 onclick

<script language="JavaScript">
function overlay() {
el = document.getElementById("overlay");
el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
}
</script>

其中元素“overlay”必须包含

的值
$title = $_GET['title'];
$url = $_GET['url'];

最佳答案

我认为您需要从 URL 中删除哈希 (#)。如果您的 URL 中需要哈希标记,则它必须位于 URL 的末尾:

mydomain.com?id=1#tag

如果您将哈希值放在查询字符串之前,那么您基本上是在告诉浏览器查找名为“?title=sample&url=sample.com”的元素/目标,它可能不喜欢它。

对于您更新的问题:

我认为您最好使用链接来调用您的 javascript 函数,而不是像您那样将查询字符串值添加到您的 URL 中。为了使 PHP 能够获取这些值,页面必须重新加载/向服务器发送请求。如果您不想重新加载页面,我建议您将链接更改为:

<a onclick="overlay('This is the title','www.domain.com')">

然后有一个函数:

function overlay(theTitle, theURL) {
  el = document.getElementById("overlay");
  el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
  el.innerHTML = theTitle+'<br>'+theURL;
}

这意味着您无需刷新页面即可获取所需的值。

关于javascript - 将值发送到 Javascript 函数以在元素中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11663278/

相关文章:

html - 在背景图像上重叠文本

javascript - jQuery this.href 字符串比较不起作用

javascript - 单击按钮将 img 替换为 iframe

javascript - 在 Mac 上运行 nodejs 服务器时出错, 'no suitable image found'

javascript - 如何检测jsPDF的第一页

http - HTML href 中没有 "http:"的绝对(完整)URL

javascript - 如何将 data-id 变量从模式传递到 php 页面

javascript - knex 的选择出现意外行为

r - 更有效地覆盖多边形或从空间线中提取()栅格数据

c# - 在 WPF 中叠加两个位图图像