正如您在下面的代码中看到的,我有2个标记my
和hk
当我点击hk
标记时,它会重定向到hk
页面,同时会停用hk
按钮以显示与其他按钮的区别。
那么,我使用什么PHP代码来禁用单击的按钮?
<button id="btn_my" dojoType="dijit.form.Button"
onClick='location = "<?php echo url_realurl();?>/results/view/all/M"'>
<?php
echo ci_create_img('my');
?> <!--this is malaysia flay image -->
</button>
<button id="btn_hk" dojoType="dijit.form.Button"
onClick='location = "<?php echo url_realurl();?>/results/view/all/H"'>
<?php
echo ci_create_img('hk');
?><!--this is hongkong flay image-->
</button>
答案 0 :(得分:2)
如果链接到当前页面,您可以阅读$_SERVER['REQUEST_URI']
并禁用该按钮。例如:
<?php
$countries = array(
'my' => '/results/view/all/M',
'hk' => '/results/view/all/H',
);
?>
<?php foreach ($countries as $code => $uri): ?>
<?php if ($_SERVER['REQUEST_URI'] === $uri): ?>
<button class="disabled">
<?php else: ?>
<button onClick='location="<?php echo url_realurl().$uri; ?>"'>
<?php endif; ?>
<?php echo ci_create_img($code);?>
</button>
<?php endforeach; ?>
您可能希望trim($uri, '/')
和trim($_SERVER['REQUEST_URI'], '/')
确保斜杠没有错误。
您还可以将$_GET
变量附加到?country_code=hk
这样的链接,然后阅读:
<?php foreach ($countries as $code => $uri): ?>
<?php if ($_GET['country_code'] === $code): ?>
<button class="disabled">
<?php else: ?>
<button onClick='location="<?php echo url_realurl().$uri.'?country_code='.$code; ?>"'>
<?php endif; ?>
<?php echo ci_create_img($code);?>
</button>
<?php endforeach; ?>
在那里,您还应该确保检查是否isset($_GET['country_code'])
,并且页面上的任何其他链接也很可能也必须使用查询字符串。我试图让这个可读。我会写一个函数来亲自阅读网址。
我更喜欢第一种方法。对不起,我不得不用我的编码风格来制作它,但希望你能得到这个想法,这对你有用。