我试图弄清楚如何在我的模板中切换两种css样式,以便我可以更改制作一个多语言网站,为此我创建了一个带有两个输入按钮的表单:
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST">
<input type="submit" id="style1" name="ar" value="Style1" /><br>
<input type="submit" id="style2" name="en" value="Style2" />
</form>
我用于jQuery函数的代码:
$('#style1').click(function (){
$('link[href="layout/css/ltr_theme.css"]').attr('href','layout/css/rtl_theme.css');
});
$('#style2').click(function (){
$('link[href="layout/css/rtl_theme.css"]').attr('href','layout/css/ltr_theme.css');
});
样式只会改变一毫秒,然后返回到之前的样式。
仅供参考,我尝试用另一种方法替换<input/>
<a><a/>
,并且它有效,但我需要输入法的原因是用PHP方法调用PHP中的另一个脚本以包含同一个语言文件时间。
希望我能找到一个人来帮助我解决这个问题,谢谢。
答案 0 :(得分:0)
改变这个......
$('#style1').click(function (){
对此...
$('#style1').click(function (event){
event.preventDefault();
重复第二个按钮。
这将阻止页面因表单提交而重新加载。
答案 1 :(得分:0)
当您单击提交按钮时,页面会自动刷新(因为它发送了POST请求而您没有使用AJAX来处理它)。因此,您需要使用https://api.jquery.com/jquery.post/
当您点击链接时,由于链接是本地的(#style),因此不会刷新页面。