[英]Select an option from a datalist and compare index number to another option in a second datalist
[英]Filtering option values from datalist if I change from select
我知道我的帖子已经重复,但是我找不到适合我的帖子。
我有一个代码:
<select project="myclass" class="form-control" name="myclass" id="myclass" onchange="" value="--"> <option>--</option> <option>X TKJ 1</option> <option>X TKJ 2</option> </select> <input type="text" name="name" id="name" placeholder="Student Name" list="checkName" autocomplete="off" required> <datalist id="checkName"> <option value="X TKJ 1">ALEX</option> <option value="X TKJ 2">JOHN</option> <option value="X TKJ 1">SAM</option> <option value="X TKJ 2">ANDY</option> </datalist>
如何如果我选择X TKJ 2
DataList控件将通过筛选值X TKJ 2
。 因此,如果输入ALEX
,则由于X TKJ 1
而不显示在列表中,但是如果选择--
,则所有名称都将显示在数据列表中。
$('#myclass').on('change', function(){ var opt = $(this).find('option:selected'); $('#checkName option').prop('disabled', false); if(opt.length > 0 && opt.text() != '--') { $('#checkName option').prop('disabled', true); $('#checkName option[value="'+opt.text()+'"]').prop('disabled', false); } });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <select project="myclass" class="form-control" name="myclass" id="myclass" onchange="" value="--"> <option>--</option> <option>X TKJ 1</option> <option>X TKJ 2</option> </select> <input type="text" name="name" id="name" placeholder="Student Name" list="checkName" autocomplete="off" required> <datalist id="checkName"> <option value="X TKJ 1">ALEX</option> <option value="X TKJ 2">JOHN</option> <option value="X TKJ 1">SAM</option> <option value="X TKJ 2">ANDY</option> </datalist>
这是一个工作代码。 但是您必须知道:
但是使用您的代码,就可以了。
var options = $('#checkName option').clone(); $('#myclass').change(function(){ var val = $(this).val(), filterOptions = val == '' ? options : options.filter('[value="' + val + '"]'); $('#checkName').html('').append(filterOptions); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select project="myclass" class="form-control" name="myclass" id="myclass" onchange="" value="--"> <option value="">--</option> <option>X TKJ 1</option> <option>X TKJ 2</option> </select> <input type="text" name="name" id="name" placeholder="Student Name" list="checkName" autocomplete="off" required> <datalist id="checkName"> <option value="X TKJ 1">ALEX</option> <option value="X TKJ 2">JOHN</option> <option value="X TKJ 1">SAM</option> <option value="X TKJ 2">ANDY</option> </datalist>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.