0

我想使用 PHP 代码在 ajax 调用中获取下拉列表。

$outputRes = '';
$reminderDetails["interval_type"] = value of dropdown this may varies. I want to keep value selected="selected"

以下是我预期的 ajax 调用输出

$outputRes .= '<select id="reminder_int_type" name="reminder_int_type" class="change">
                 <option value="1" '.if($reminderDetails["interval_type"] == 1){ \'selected="selected"\'; }.'>days</option>
                 <option value="2">Hours</option>
                 <option value="3">Minutes</option>
              </select>';
echo $outputRes; exit;

我可以使用如下代码,但我有很多选项标签,所以对我来说看起来不可行

$outputRes .= '<select id="reminder_int_type" name="reminder_int_type" class="change">
                 <option value="1" ';
if($reminderDetails["interval_type"] == 1){ $outputRes .= 'selected="selected"';}
$outputRes .= '>days</option>
                 <option value="2">Hours</option>
                 <option value="3">Minutes</option>
              </select>';
echo $outputRes; exit;

我在编写正确的语法时遇到问题。

4

2 回答 2

0

根据您的代码,您可以这样做:

$outputRes = '';
$reminderDetails["interval_type"] = value of dropdown this may varies. I want to keep value selected="selected"

$interval = array("Days", "Hours", "Minutes");

$outputRes .= '<select id="reminder_int_type" name="reminder_int_type" class="change">';

foreach ($interval as $k => $v) {
    $k = $k + 1; // to keep your values beginning at 1.
    $outputRes .= '<option value="'.$k.'"'
    if ($reminderDetails["interval_type"] == $k) {
        $outputRes .= 'selected="selected"';
    }
    $outputRes .= '>';
    $outputRes .= $v
    $outputRes .= '</option>';
}

$outputRes .= '</select>';

您可能希望返回 JSON 并在浏览器端解析它。见json_encode

于 2013-03-26T07:19:30.280 回答
0
$reminderDetails["interval_type"] = 'value of dropdown this may varies. I want to keep value selected="selected"';

$result = array('array from which you want to create a dropdown');
$outputRes = '<select id="reminder_int_type" name="reminder_int_type" class="change">';
foreach($result as $optionValue=>$optionName)
{
   $is_selected = ($reminderDetails["interval_type"] == $optionValue)?'selected':'';
   $outputRes   .= "<option value=$optionValue $is_selected>$optionName</option>"

}

$outputRes . ="</select>";
echo $outputRes; exit;

我希望您有所了解.. 我假设您正在从数组中动态创建下拉列表

于 2013-03-26T07:20:59.697 回答