我有一个下拉列表,其中填充了一个mysql查询
while ($myrow = mysql_fetch_array($phresult))
{
if ($ID == $myrow["Cmpy_ID"])
{
printf("
<option value=\"%s\" selected>%s</option>\n", $myrow["Cmpy_ID"], $myrow["Provider_Name"]);
}
else
{
printf("
<option value=\"%s\">%s</option>\n", $myrow["Cmpy_ID"], $myrow["Provider_Name"]);
}
}
此查询在应用程序中多次使用,但仅在这种情况下,我希望排除provider_name='foo'的条目。
我不想仅仅为了这个例子而更改它或者包含一个额外的查询,那么在填充一个条目之后,有没有方法从下拉列表中删除它呢?
最佳答案
在php执行期间,当值为Foo
时可以跳过:
<?php
while ($myrow = mysql_fetch_array($phresult))
{
if($myrow["Provider_Name"]=='Foo')
continue;
if ($ID == $myrow["Cmpy_ID"])
{
printf("
<option value=\"%s\" selected>%s</option>\n", $myrow["Cmpy_ID"], $myrow["Provider_Name"]);
}
else
{
printf("
<option value=\"%s\">%s</option>\n", $myrow["Cmpy_ID"], $myrow["Provider_Name"]);
}
}
或者通过jquery:
$("#selector option[value='Foo']").remove();
顺便说一句,mysql已经被弃用了,请使用mysqli或pdo。