【发布时间】:2013-10-27 16:24:03
【问题描述】:
我正在尝试不同的解决方案来更改我网站中的语言。
第一个是使用<select> 下拉菜单并且工作正常。
第二种方法是包含国家标志,可单击以更改语言。 但这不适用于我的代码。
<form action="<?php if (isset($_GET['nav'])){ echo "index.php?nav=" . $_GET['nav'];} else {echo "index.php";} ?>" method="post" id= "language" >
<label>Select language: </label>
<input type="submit" style="background-image: url(./img/lang_de_s.png)" class="languageButton" value="de" />
<input type="submit" style="background-image: url(./img/lang_en_s.png)" class="languageButton" value="en" />
<select name="language" class="dropdown" onchange="submit();">
<option value="en"<?php echo ($_SESSION['lang'] == 'en')?' selected="selected"':''; ?>>English</option>
<option value="de"<?php echo ($_SESSION['lang'] == 'de')?' selected="selected"':''; ?>>Deutsch</option>
</select>
</form>
那么我的按钮做错了什么,导致表单无法正确发送? 另外,最好让按钮的 value 属性不可见。所以“en”文本在图像上不可见。我怎样才能做到这一点?
感谢您的帮助。
【问题讨论】:
-
那么您的实际问题是什么?
-
Sry 太早保存了一小部分。我更新了问题
-
您的输入元素没有
name属性,因此它们不会向服务器提交任何值。 -
我想知道你为什么不在
<image>标签周围包裹一个<a href>标签?这将使事情变得更容易 -
它们可以具有相同的名称属性还是必须是唯一的?我没有使用 href,因为我想保持我的 url 内容干净。 (使用 POST 而不是 GET)我猜在 3 或 4 个参数之后它会变得混乱。