通过在单击按钮上使用以下代码,我获得href属性值,直到一切正常,但当我在单击按钮时获得href
链接时,我们希望将其存储在会话变量(即var href
)中,因为我们也在其他地方使用此变量。请建议我如何在会话中存储JavaScript变量。?
<script>
$(document).ready(function(){
$('.button').click(function(){
var href = $(this).val();
alert(href);
})
});
</script>
<button value="<?php echo $value['3']; ?>" class="button" style="background-color:#ff8c21;">Buy Now</button>
您不能设置SESSION WITH JAVASCRIPT这是因为它的服务器端功能,所以如果您想在其他地方使用此data
,您可以向服务器发送ajax请求,并在那里为该数据创建会话。
JS:
$(document).ready(function(){
$('.button').click(function(){
var href = $(this).val();
$.ajax({
type: "POST",
url: url,//url to file
data: {val:href},
success: function(data){
//success
};
});
});
});
PHP:
session_start();
if(isset($_POST['val']))
{
$_SESSION['href'] = $_POST['val'];//created a session named "href"
}
//use session
if(isset($_SESSION['href']))
{
echo $_SESSION['href'];//use your session.
}
如果您想使用jquery使用会话,请尝试首先包括jquery-1.9.1.js和jquery.session.js
$(document).ready(function(){
$('.button').click(function(){
var href = $(this).val();
$.session.set("yoursessioname", "storevalue");
})
});
alert($.session.get("yoursessioname"));
更多详细信息http://phprocks.letsnurture.com/create-session-with-jquery/
如果您想将它存储在SERVER端的会话中,那么您需要使用ajax传递变量并将其存储在php中,例如使用
<?php
session_start();
!isset($_POST['var']) ?: $_SESSION['var'] = $_POST['var'];
但是你也可以考虑使用cookie,这样你就不需要PHP了——只需要使用JavaScript就可以了。有一个很好的Jquery插件
JavaScript在浏览器中工作,PHP会话在服务器上激活,因此如果不向服务器发送请求(例如通过url或提交表单),就无法更改会话变量。但是您可以使用sessionStorage,这是一个类似的原理,但存在于浏览器中,可以通过javascript进行修改。
例如。(javascript内部)
sessionStorage.myvariable=myVal
等等。只要您的选项卡打开(从一页到另一页),它就会一直存在。