在php中的Normaly我可以使用像这样传入的变量:
http://localhost:88/myapp/mypage.php?id=552200
$_GET['id'];
我现在切换页面以使用easytabs
(https://os.alfajango.com/easytabs/)
选项卡在index.php上初始化,它有2个选项卡,page1.php和page2.php 在index.php中,我有这个代码来初始化标签:
jQuery(function($) {
var container = $('#ajax-tab-container');
container.easytabs({
animate: false,
cache: false,
updateHash: true,
defaultTab: $('#selectedTab').val()
}).bind('easytabs:after', function(event, $clicked, $targetPanel, response, status, xhr) {
$('input, textarea, select, button', $('.disable-fields')).prop('readonly', true).prop('disabled', true);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://rawgit.com/JangoSteve/jQuery-EasyTabs/master/lib/jquery.easytabs.js"></script>
<div id="ajax-tab-container" class='tab-container'>
<ul class='etabs'>
<li class='tab'>
<a href="Verloop_meldingen.php" data-target="#tab-1">Verloop meldingen</a>
</li>
<li class='tab'>
<a href="openstaande_meldingen.php" data-target="#tab-2">Openstaande meldingen</a>
</li>
</ul>
<div class='panel-container'>
<div id="tab-1"></div>
<div id="tab-2"></div>
</div>
</div>
我遇到的问题是,在index.php中,$ _GET变量可用,但在选项卡中加载的页面中,它们不是。
知道如何在子页面中获取变量吗?
答案 0 :(得分:4)
在a href中你可以像往常一样传递id
像这样: <a href="Verloop_meldingen.php?id=1" data-target="#tab-1">Verloop meldingen</a>
<a href="openstaande_meldingen.php?id=1" data-target="#tab-2">Openstaande meldingen</a>
在您的其他页面中,您可以像往常一样使用$ _GET
获取变量如果您需要动态更改,可以使用javascript更改href,如下所示:
$('yourhref selector class/id here').attr('href', 'new href');
答案 1 :(得分:0)
我通常喜欢使用这样的脚本来为我收集javascript页面中的get变量。
它允许我简单地执行get('paramname','somedefaultvalueifiwantto')
从get参数中获取我想要的变量值。只需将脚本(没有console.log)部分插入到标题中,您就可以获得一个很好的get函数。
var some_get = get('open_tab','first-tab');
如果你能用哈希就可以了,你可以使用document.location.hash
来快速获得你需要的值。
+(function(document) {
function processGet() {
var $get = {};
var $rest = document.location.href
.replace(document.location.hash,'')
.replace(document.location.protocol+'//','')
.replace(document.location.host,'')
.replace(document.location.pathname,'');
if (!($rest.trim().length === 0) && $rest.indexOf('?') === 0) {
$rest = $rest.substring(1);
if($rest.trim().length > 0) {
var $roughGet = $rest.split('&').map(function($paramSet,$index, $array) {
var $set = $paramSet.split('=');
if($set.length == 1) {
$set[1] = null;
}
var value = $set[1] ? decodeURIComponent($set[1]) : null;
return {'key': decodeURIComponent($set[0]),'value' : value};
});
for(var c=0;c<$roughGet.length;c++) {
var $key = $roughGet[c].key;
var $value = $roughGet[c].value;
$get[$key] = $value;
}
}
}
return $get;
}
var GET = processGet();
window.get = function(param, defaultValue) {
var value = null;
if(GET.hasOwnProperty(param)) {
value = GET[param];
}
if(value === null) {
if(defaultValue === undefined) {
return value;
}
else {
return defaultValue;
}
}
return value;
};
})(document)
console.log(get('foo','no'));