Hy那里
我的网站上有一些像这样的选择框:
<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求助!
修改
好吧,我想我在同事的代码中找到了问题......但我遇到了另一个问题,就像他想要解决的问题一样。 这是实际的代码:
<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你无法获得选择字段的Text部分,或者? 他还能解决这个问题吗?
答案 0 :(得分:1)
如果您希望获得“2011年”,则应将选项的值设置为
<option value="at 2011">at 2011</option>
答案 1 :(得分:0)
据我了解,您希望保留value
属性,但请将文字放在option
标记内。
$("#regdate option[value='2011']").text()
将返回“2011年”