-1
<div>
<select name="mySelect" id="mySelect" class="select"  onchange="if(this.options[this.selectedIndex].value != ''){window.top.location.href=this.options[this.selectedIndex].value}">
<option value="english.php">English</option>
<option value="french.php">French</option>
<option value="spanish.php">Spanish</option>
</select>
</div>

我想更改语言,当我更改语言时它可以正常工作,但在下拉列表中它总是显示英语

4

3 回答 3

2

selected属性添加到页面加载时要选择的选项。

于 2012-08-09T05:53:16.870 回答
1

您需要添加另一个空白标签。

工作示例:http: //jsfiddle.net/XYSXA/

<select name="mySelect" id="mySelect" class="select"  onchange="if(this.options[this.selectedIndex].value != ''){window.top.location.href=this.options[this.selectedIndex].value}">
    <option value=""></option>
    <option value="english.php">English</option>
    <option value="french.php">French</option>
    <option value="spanish.php">Spanish</option>
</select>​

这样,默认情况下不会选择任何选项。

selected或者,您可以使用在其中一个开始标记内设置属性<option>来指定默认情况下应选择哪种语言。默认选择法语的示例:

<select name="mySelect" id="mySelect" class="select"  onchange="if(this.options[this.selectedIndex].value != ''){window.top.location.href=this.options[this.selectedIndex].value}">
    <option value=""></option>
    <option value="english.php">English</option>
    <option value="french.php" selected>French</option>
    <option value="spanish.php">Spanish</option>
</select>​

工作示例:http: //jsfiddle.net/XYSXA/1/

于 2012-08-09T05:55:53.897 回答
0
<?
$file=basename($_SERVER['PHP_SELF'],".php");
$file=ucwords($file);
?>
<option value="french.php" <?=($file=="French")?" selected='selected'":""?>>French</option>

我假设您使用的是法语 for french.php、Spanish for spanish.php 等模式

于 2012-08-09T05:57:31.587 回答