海兰有形式选择框与错误的值
我有我的网站上一些selecboxes像这样的:
<div class="registrationdate">
<select class="filter registrationdate" name="rdat" id="regdate">
<option value="">---</option>
<option value="2012">at 2012</option>
<option value="2011">at 2011</option>
<option value="2010">at 2010</option>
</select>
</div>
现在我有一个问题,提交表单后... 如果“2011”被选中后提交我只得到“2011”,价值,但我想要的文字。 刷新后选择框将文本更改为“在2011”
在源中我可以看到问题,但我不知道如何解决它。 后提交表单,我降落在同一页上的选择框的源上方被改变这样的:
<div class="registrationdate">
<select class="filter registrationdate" name="rdat" id="regdate">
<option value="2012">2012</option>
<option value="">---</option>
<option value="2012">at 2012</option>
<option value="2011">at 2011</option>
<option value="2010">at 2010</option>
</select>
</div>
所以这里是一些帮助我吗?我希望我表达了我的理解。 thanx求助!
编辑
OK,我想我已经找到了我的同事的代码的问题...但我遇到了另外一个问题,和他想解决的一样。 这是实际的代码:
<form action='<?php echo $_SERVER['PHP_SELF']; ?>' name='filterform' method='get' class="filterform">
<div class='registrationdate'>
<strong><?php echo $GLOBALS['Lng']['filter_Erstzulassung']; ?>:</strong>
<select id="regdate" name="rdat" class="filter registrationdate">
<?php if (isset($_GET['rdat'])&&$_GET['rdat']!='') echo '<option value="'.$_GET['rdat'].'">'.$_GET['rdat'].'</option>'; ?>
<option value="">---</option>
<?php for ($i = date(Y); $i >= (date(Y)-7); $i--) {
echo '<option value="'.$i.'">ab '.$i.'</option>';
}?>
</select>
</div>
<input type="submit" value="<?php echo $GLOBALS['Lng']['apply']; ?>" name="submit" id="submit" class="field">
</form>
的问题是,他想输入的选项可见再次提交表单后。在正常情况下,如果你发送表单,你得到了默认值。他试图用php部分覆盖这个“isset then echo”。 AFAIK PHP你不能得到选择字段的文本部分,或者? 他还有什么可以解决这个问题的?
你是什么意思刷新选择框的意思! –
看起来像什么被选中成为一个新的选择,是正确的? – gunnx