Javascript 在querystring中存储值但仍显示div 我的HTML: 我的问题是:
当我单击链接时,它必须显示div并添加查询字符串,但它不起作用,因为如果我单击链接,它将重新启动页面以添加查询字符串,然后div将不显示。但是我仍然需要它来添加查询字符串。1)由于id是唯一的,您可以使用Javascript 在querystring中存储值但仍显示div 我的HTML: 我的问题是:,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当我单击链接时,它必须显示div并添加查询字符串,但它不起作用,因为如果我单击链接,它将重新启动页面以添加查询字符串,然后div将不显示。但是我仍然需要它来添加查询字符串。1)由于id是唯一的,您可以使用#showdiv而不是a#showdiv 2) 使用e.preventDefault()来防止单击的默认行为 3) 您缺少id为divtoshow的目标div的 $("#showdiv").click(function(e){ e.preventDefault(); $("#di
#showdiv
而不是a#showdiv
2) 使用e.preventDefault()
来防止单击的默认行为
3) 您缺少id为divtoshow的目标div的
$("#showdiv").click(function(e){
e.preventDefault();
$("#divtoshow").show();
});
使用
preventDefault
防止默认操作:
$("#showdiv").click(function(e){
e.preventDefault();
$("#divtoshow").show();
}
你可以:
$("a#showdiv").click(function(e){
e.preventDefault();
e.stopPropagation();// not sure if needed.
$("#divtoshow").show();
}
它应该停止正常的链接行为
编辑
要添加已单击的div的文本,请执行以下操作:
$("a#showdiv").click(function(e){
e.preventDefault();
e.stopPropagation();// not sure if needed.
var id = $('#showdiv').attr('id').split('=')[1];// if only one parameter posible
$("#divtoshow").show();
}
使用以下JQuery代码
$("#showdiv").click(function(e){
e.preventDefault();
$("#divtoshow").show();
});
只需将锚更改为
<a href="#showDiv?id=2" id="showdiv">Open div and store values</a>
简单来说,它不会刷新页面,而是将id为showdiv的元素带到视图中,。当然,如果它存在的话。试试这个
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
在document.ready()上
但是我仍然需要它来添加查询字符串。如果不重新加载页面,您就不能这样做。但是我仍然需要它来添加查询字符串。它将如何添加它,但我仍然需要它来添加查询字符串。我不知道我是否理解,你的意思是添加所单击div的文本吗?如果是这样的话:没有回邮你就做不到。看见
<a href="#showDiv?id=2" id="showdiv">Open div and store values</a>
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
if(getParameterByName("id") == 2)
{
$("#divtoshow").show();
}