我必须选择框。还有两个按钮。按钮被禁用。当选择框更改时,将启用按钮。
<select class="form-control" id="target_category" name="target_category">
<?php $categories = $categoryObj->deepestCategories(); ?>
<option value="-1">Kategori Seç</option>
<option value="0">Kategori Yok</option>
<?php
foreach($categories as $category){
echo '<option value="'.$category['id'].'">(ID: '.$category['id'].') '.$category['category'].'</option>';
}
?>
</select>
<span class="input-group-btn">
<button disabled="disabled" name="move_category_button" id="move_category_button" class="btn btn-default" type="submit"><span class="glyphicon glyphicon-move"></span> Taşı</button>
</span>
<select class="form-control" id="target_location" name="target_location">
<?php $locations = array('Türkiye','Çin','Hindistan','Nepal','Pakistan'); ?>
<option value="-1">Menşei Seç</option>
<?php
foreach($locations as $location){
echo '<option value="'.$location.'">'.$location.'</option>';
}
?>
</select>
<span class="input-group-btn">
<button disabled="disabled" name="move_location_button" id="move_location_button" class="btn btn-default" type="submit"><span class="glyphicon glyphicon-move"></span> Taşı</button>
</span>
对于短代码编写,我决定将两个jquery脚本合并为一个语句。
但我无法处理两者。
这是我的代码。
$('#target_location, #target_category').change(function(){
val = $(this).val();
if (val != -1){
$(this).children('button').removeAttr('disabled');
} else {
$(this).children('button').attr('disabled','disabled');
}
})
答案 0 :(得分:0)
你的按钮不是你选择的孩子,他们是兄弟姐妹的孩子。
使用.next()
抓住兄弟按钮容器,然后.children()
获取按钮。此外,使用disabled
属性作为布尔值比添加和删除属性更好。
$('#target_location, #target_category').change(function(){
var val = $(this).val();
if (val != -1){
$(this).next('input-group-btn').children('button').prop('disabled', false);
} else {
$(this).next('input-group-btn').children('button').prop('disabled', true);
}
});
答案 1 :(得分:0)
按钮不是选择框的子项,您需要选择下一个兄弟。
$('#target_location, #target_category').change(function(){
val = $(this).val();
if (val != -1){
$(this).next('span').find('button').removeAttr('disabled');
} else {
$(this).next('span').find('button').attr('disabled','disabled');
}
})