【问题标题】:Why selected value of select gets change in dynamic dropdown?为什么选择的选定值会在动态下拉列表中发生变化?
【发布时间】:2018-11-14 15:23:14
【问题描述】:

我有一些代码,其中存在两个选择框。一个选择相对于第一个选择动态更改其值。第一个选择框是其中的一些值来自使用 PHP 的后端。

<select class="form-control" name="tsm_id" id="tsm_id">
    <option value=""><b>SELECT TSM</b></option>
    <?php echo fill_year($connect); ?> 
</select>

第二个选择框取决于第一个选择框。 When any value in the first box is selected this select box change its value dynamically.

<select class="form-control" name="sr_id" id="sr_id">
<option value="" selected>SELECT SR</option></select> 

但问题是,当我在第一个选择框中选择任何值时,选择的值 SELECT SR 消失,只有来自后端的值出现。我希望,如果有人从第一个选择框中选择值,则 SELECT SR 保留在那里作为选定值,其余值低于该值。我正在使用 javascript 代码来附加这些选项。

$(document).ready(function(){  
    $('#tsm_id').change(function(){  
         var tsm_id = $(this).val();  
         $.ajax({  
              url:"http://localhost/salesforce/fetch_sr.php",  
             method:"GET",
             data:{tsm_id:tsm_id},  
              dataType:"json",                  
              success:function(data){  
              // var data=JSON.stringify(data);

              $('#sr_id').html('');
              for (var i in data)
              {               
                $("#sr_id").append("<option value="+data[i].employee_id+">"+data[i].employee_name+"</option>");
              }
          }
          });
     });
});

谁能告诉我我在这方面做错了什么。 我想要的是,如果有人从第一个选择框中选择值,那么第二个选择框与图像中的选择值设置为 SELECT SR 相同,并且应在其下方附加选项。

我想要这样的东西:

如果我从第一个选择框中选择一个值然后第二个选择框显示选项,而不是默认值,我不希望这样。

现在我是这样的:

【问题讨论】:

  • 您可以添加您在更改第一个选择框时得到的响应吗?

标签: javascript jquery select


【解决方案1】:
 $('#sr_id').html('');

这是删除 ajax 成功的默认选项。 您可能想使用:

 $('#sr_id').html('<option value="" selected>SELECT SR</option>');

【讨论】:

  • 我可以使用动态相关选择框获得有关价格估算的参考吗?喜欢 > 美国(国家)-> 阿拉斯加(州)-> 运费:80 美元
【解决方案2】:

您当前正在删除 ajax 回调中的所有选项,然后再循环出新选项。
如果你改变了

$('#sr_id').html(''); 

$('#sr_id').html('<option value="" selected>SELECT SR</option>'); 

该选项将始终是第一个(和选定的)值。

【讨论】:

  • 这个答案应该是重复的答案。
  • 复制到什么答案?如果您有重复,请用它标记问题。
  • 我们几乎同时发布了它们,由于解释略有不同,OP 可以选择接受哪一个。
猜你喜欢
  • 2016-10-28
  • 2023-01-30
  • 1970-01-01
  • 2015-09-07
  • 2012-08-12
  • 1970-01-01
  • 1970-01-01
  • 2015-06-16
  • 2021-02-13
相关资源
最近更新 更多