Jquery 代码>。。然后在我的代码中使用$(this).val(),而不是使用$(this).data('match').Explosion-pill-这非常非常非常有用,因为我知道使用此web表单的客户端都有不同的浏览器。对于他们的情况和使用您的解决方案,如何更改
Jquery 代码>。。然后在我的代码中使用$(this).val(),而不是使用$(this).data('match').Explosion-pill-这非常非常非常有用,因为我知道使用此web表单的客户端都有不同的浏览器。对于他们的情况和使用您的解决方案,如何更改,jquery,Jquery,代码>。。然后在我的代码中使用$(this).val(),而不是使用$(this).data('match').Explosion-pill-这非常非常非常有用,因为我知道使用此web表单的客户端都有不同的浏览器。对于他们的情况和使用您的解决方案,如何更改它,以便它检查下拉列表中特定字符的值,例如,如果从收音机中选择House,则在下拉列表中查找,仅显示包含“HO-”的值?这可能吗?@user1176783最简单的方法是在单选按钮本身中添加一些值,如。。然后在我的代码中使用$(this).val
代码>。。然后在我的代码中使用
$(this).val()
,而不是使用$(this).data('match')
.Explosion-pill-这非常非常非常有用,因为我知道使用此web表单的客户端都有不同的浏览器。对于他们的情况和使用您的解决方案,如何更改它,以便它检查下拉列表中特定字符的值,例如,如果从收音机中选择House,则在下拉列表中查找,仅显示包含“HO-”的值?这可能吗?@user1176783最简单的方法是在单选按钮本身中添加一些值,如
。。然后在我的代码中使用$(this).val()
,而不是使用$(this).data('match')
。
<form method="post">
<fieldset id="Group1" name="Group1">
<legend>Group box</legend>
<input id="Radio1" name="Radio1" type="radio" value="House" />House<br />
<input id="Radio1" name="Radio1" type="radio" value="Condo" />Condo<br />
<input id="Radio1" name="Radio1" type="radio" value="Boat" />Boat<br />
</fieldset><br/><br/>
<fieldset id="Group2" name="Group2">
<legend>Group Options</legend>
<select id="Select1" name="Select1">
<option value="HO-House 1">House 1</option>
<option value="HO-House 2">House 2</option>
<option value="HO-House 3">House 3</option>
<option value="CO-Condo 1">Condo 1</option>
<option value="CO-Condo 2">Condo 2</option>
<option value="CO-Condo 3">Condo 3</option>
<option value="BO-Boat 1">Boat 1</option>
<option value="BO-Boat 2">Boat 2</option>
<option value="BO-Boat 3">Boat 3</option>
</select></fieldset></form>
$(function(){
var select = $('#Select1'),
options = select.find('option');
$('[type="radio"]').click(function(){
var visibleItems = options.filter('[value*="' + $(this).val() + '"]').show();
options.not(visibleItems).hide();
if(visibleItems.length > 0)
{
select.val(visibleItems.eq(0).val());
}
});
});
<form method="post">
<fieldset id="Group1" name="Group1">
<legend>Group box</legend>
<input id="Radio1" name="Radio1" type="radio" value="House" />House<br />
<input id="Radio1" name="Radio1" type="radio" value="Condo" />Condo<br />
<input id="Radio1" name="Radio1" type="radio" value="Boat" />Boat<br />
</fieldset>
<br/><br/>
<fieldset id="Group2" name="Group2">
<legend>Group Options</legend>
<select id="Select1" name="Select1">
<option>Select</option>
<option value="HO-House 1">House 1</option>
<option value="HO-House 2">House 2</option>
<option value="HO-House 3">House 3</option>
<option value="CO-Condo 1">Condo 1</option>
<option value="CO-Condo 2">Condo 2</option>
<option value="CO-Condo 3">Condo 3</option>
<option value="BO-Boat 1">Boat 1</option>
<option value="BO-Boat 2">Boat 2</option>
<option value="BO-Boat 3">Boat 3</option>
</select>
</fieldset>
</form>
<script>
jQuery(function($) {
$('input:radio').change(function(){
var val = $('input:radio:checked').val();
console.log(val)
$('#Select1').val(0)
$('option[value]').hide();
$('option[value*="-' + val + '"]').show();
});
});
</script>
//record of temporarily removed options
var oldoptions = [];
$("[type=radio]").on('click', function () {
//add all filtered options back
$("#Select1").append(oldoptions);
//Remove any option whose text does not contain the text of the selected
//radio button
oldoptions = $("#Select1 option:not(:contains(" + $(this).val() + "))").detach();
});