【问题标题】:How to pass values of selected dropdown option but that dropdown is disabled如何传递所选下拉选项的值但该下拉列表被禁用
【发布时间】:2016-08-31 11:23:29
【问题描述】:

在我的应用程序中,有一个下拉菜单应该被禁用。但是当该下拉菜单禁用时,该下拉菜单的选定值在控制器中显示为 null .instaed of disabled dropdown 我尝试将该下拉菜单设置为只读。这里是编写如何将该下拉列表设置为只读的代码。

$('#IandS').attr("readonly", "readonly");

但问题是在单击该下拉菜单时,该下拉菜单会打开以选择另一个选项。 什么是访问禁用下拉列表值的解决方案。 请提出一些解决方案。

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    无论<select> 是否被禁用,您都应该能够访问所有 DOM 元素。我认为您直接从<select> 获取值,但如果禁用选择它没有任何价值!这是因为它返回null。要获取 <option> 标签,您可以这样做:

    $('#IandS').find('option').each(function() {
        console.log("Text: "+ $(this).text()+" -- Value: "+ $(this).val());
    });
    

    【讨论】:

      【解决方案2】:

      禁用的表单输入永远不会与表单一起提交

      解决方案 你可以制作隐藏字段。您可以将隐藏字段中的选定值设置为值。

      1) 如果您需要在服务器端隐藏字段,请保留名称。

      2) 从下拉列表中移除名称属性。

      3) 在 javascript 中添加以下代码以将更改的值应用于隐藏字段

      $('#IandS').change(function(){
         $('#hidden_field_id').val($(this).val());
      });
      

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多