我正在动态下降: -
控制器: -
function get_model_by_make()
{
$str = $this->Comparecars_model->get_model_by_make();
echo $str;
}
型号: -
function get_model_by_make()
{
$sql = "SELECT
*
FROM
model
WHERE
makeid = '".$_POST['make_id']."'
";
$result = $this->db->query($sql)->result_array();
$str = '<select style="width:130px;" class="compare_model_name">
<option value="">--Select Model--</option>
';
foreach($result as $result)
{
$str .= '<option value="'.$result['model_id'].'">'.$result['model_name'].'</option>';
}
$str .= '</select> - ';
return $str;
}
上面的代码显示了类名为compare_model_name
的selectbox。现在我尝试将更改事件添加到此类名称,但它不起作用: -
$(document).ready(function()
{
$('.compare_model_name').on("change",function()
{
alert(); // It does not alert
});
});
此外,控制台未显示任何错误。
修改: -
查看: -
<select style="width:130px;" id="drpMake1" name="drpMake1" class="compare_make_name">
<option value="">--Select Make--</option>
<?php
foreach($make as $make)
{
echo '<option value="'.$make['make_id'].'">'.$make['make_name'].'</option>';
}
?>
</select> - <!-- On selecting it will bring new selectbox which is shown below -->
<span id="model_span">
<select style="width:130px;" class="aspNetDisabled" disabled="disabled" id="drpModel1" name="drpModel1">
<option value="0" selected="selected">--Select Model--</option>
</select>
</span>
答案 0 :(得分:1)
希望您需要在<span id="model_span">
之前下新的下拉列表
然后在视图文件中添加以下行。
<select style="width:130px;" class="compare_model_name">
</select>
然后在你的ajax成功中,添加
等选项$(".compare_model_name").html(options);
在您的模型函数get_model_by_make
中,删除<select>
和</select>
行。
然后分配您的$str = ' <option value="">--Select Model--</option>';
注意:请勿在模型中执行此类echo
。相反,你必须在控制器中做所有事情。模型应该只有DB类型的编码。不回声或逻辑部分。遵循MVC结构: - )