我有一个文本输入和一个select元素。
我的选择选项值都是数字,但显示的是产品名称。
当用户键入文本输入或更改文本输入时,我如何更改所选选项,但我想在select元素中选择与文本输入中的值类似的选项

// Event handler for text input
$('#txt').on('input', function() {
  // Getiing option based on input value and setting it as selected
  $('#sel option:contains(' + this.value + ')').eq(0).prop('selected', true);
});

// Event handler for select
$('#sel').change(function() {
  // Updating text input based on selected value
  $('#txt').val($('option:selected', this).text());
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" id="txt" />
<select id="sel">
  <option value="">Select</option>
  <option value=1>Domain Registration (.co.uk)</option>
  <option value=2>Domain Registration (.co)</option>
  <option value=3>Domain Registration (.com)</option>
  <option value=2>Domain Registration (.uk.com)</option>
</select>

最佳答案

你可以这样接近它,
HTML格式:

<input type="text" id="input">

<select id="selectId">
    <option value="1">Product 1</option>
    <option value="2">Product 2</option>
    <option value="3">Product 3</option>
</select>

查询:
$(document).ready(function(){
    $("#input").change(function(){
        var val = $("#input").val();
        $("#selectId > option").each(function() {
            if(this.text == val) {
                $("#selectId > option").removeAttr("selected");
                $(this).attr("selected","selected");
            }
        });
    });
});

请找到jsfiddle:http://jsfiddle.net/chirag1goel/Lvn9vfcx/1/
编辑:子字符串匹配。
$(document).ready(function(){
    $("#input").change(function(){
        var val = $("#input").val();
        $("#selectId > option").each(function() { //Run through the loop of each option
            if(this.text.indexOf(val)>=0) { //Find if the string present as substring
                $("#selectId > option").removeAttr("selected"); //Remove the existing selected option
                $(this).attr("selected","selected"); //Select this matching option as selected
                return false; //Return after first match is found
            }
        });
    });
});

新小提琴:http://jsfiddle.net/chirag1goel/Lvn9vfcx/2/

关于jquery - 当文本输入像值时,jQuery更改选择选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32615478/

10-08 21:35