我如何使用JavaScript获取选择选项中的值

时间:2019-10-09 06:34:19

标签: javascript jquery

当我在选项中选择一个聚会名称时,我正在从表中获取acno。到目前为止,我已经很累了,我从表中获取了acno,但是它不在选项框中。

我的控制器代码:

 public function get_states2()
    {
        $name = $this->input->post('name');
$result = $this->db->query("SELECT TAcNo FROM tipup_payment LEFT OUTER JOIN parmaster on parmaster.pcode =  tipup_payment.TName WHERE PName='$name' ")->result_array();
echo json_encode($result);
}

我的查看页面代码:

<div class="col-md-6">
<div class="form-group form-group-xs">
<div class="col-lg-9">
    Party Name:
<select class="form-control countries"  name="City">

<option></option>
<?php foreach ($PName as $row ): ?> 
<option value="<?php echo trim($row['PName']); ?>"><?php echo trim($row['PName']); ?></option><?php endforeach ?>
</select>
</div>
</div>
<div class="form-group form-group-xs">

<div class="col-lg-9">
    AcNo:
<select multiple="multiple" style="height: 85px;"  id="Name" class="form-control states">   
<option value=""></option>
</select> 
<?php echo form_error('Area', '<div class="text-danger">', '</div>'); ?>
</div>
</div>
<div id="item">
<input type="checkbox" name="item">With Details</center></div>
</div>
</div>

我的脚本代码:

    <script type="text/javascript">

    $(document).ready(function(){

$('.countries').change(function(){
    var name = $('.countries').val();
$.ajax({
            type: "POST",
            url: "<?php echo base_url();?>Tieup/get_states2",
            data:{name:name}, 
            datatype: 'json',

            success: function (data) {
                    /*get response as json */
                    alert(data);
                    var result = jQuery.parseJSON(data);
                var no = result.TAcNo;

                    $("#Name").val(no);

                    /*ends */

                }
            });
        });
    });

</script>

这是我的视图页面,当我选择一个聚会名称时,它应该在acno选项框中显示acno(在聚会名称下方)。 enter image description here

2 个答案:

答案 0 :(得分:1)

解决方案

您需要像这样触发更改以更新选择值

$(“#Name”)。val(no).change();

答案 1 :(得分:1)

为您的下拉菜单提供一个类或ID ur html

<select class="product">

</select>

您的jquery代码 遍历所有ur值并将其一一设置为ur选项值,最后使用.html()

将所有ur html注入ur select选项
var value =  [{"TAcNo":"341"}]
var options =  '<option value="">Select</option>';


$(value).each((index, item) => { //loop through your elements
  console.log(item)
  options += '<option value="'+item.TAcNo+'">'+item.TAcNo+'</option>';
});

$('.product').html(options);

希望有帮助