[英]Append input to the correct category JQUERY
我希望添加的项目属于正确的类别,并且一次只能包含一个。 但看来我同时将产品运入乳制品和水果部门。 谁能帮我吗? 这是我的代码:
$('#catty').change(function () { if ($(this).val() == 'Dairy') { $('#product-info').keydown(function (e) { if (e.keyCode == 13) { var add = $('#product-info').val(); $('.dairy-product').append('<li>' + add + '</li>'); } }) } }); $('#catty').change(function () { if ($(this).val() == 'Fruits') { $('#product-info').keydown(function (e) { if (e.keyCode == 13) { var add = $('#product-info').val(); $('.fruit-product').append('<li>' + add + '</li>'); } }) } });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="catty" class="form-control" value="Select"> <option hidden >Select Catergory</option> <option>Dairy</option> <option>Frozen Foods</option> <option>Fruits</option> <option>Vegetables</option> </select> <div class="form-group"> <input type="text" class="form-control" id="product-info" placeholder="Item Name"> </div> <button type="button" id="btn1" class="btn btn-primary">Add Item</button> </form> </div> <div class="panel-group col-xs-12"> <div class="category"> <div class="my-panel parent"> <p class="description" id="dairy">Dairy</p> <a href="#" class="add-item"> <i class="fa fa-plus-circle" aria-hidden="true"></i> </a> </div> <ol class="dairy-product"></ol> </div> <div class="category"> <div class="my-panel parent"> <p class="description" id="fruits">Fruits</p> <a href="#" class="add-item"> <i class="fa fa-plus-circle" aria-hidden="true"></i> </a> </div> <ol class="fruit-product"></ol> </div>
$('#product-info').keydown(function(e) { var selectid = $('#catty option:selected').text().toLowerCase() if (e.keyCode == 13) { var add = $('#product-info').val(); $("."+selectid +'-product').append('<li>' + add + '</li>'); } })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="catty" class="form-control" value="Select"> <option hidden>Select Catergory</option> <option>Dairy</option> <option>Frozen Foods</option> <option>Fruits</option> <option>Vegetables</option> </select> <div class="form-group"> <input type="text" class="form-control" id="product-info" placeholder="Item Name"> </div> <button type="button" id="btn1" class="btn btn-primary">Add Item</button> </form> </div> <div class="panel-group col-xs-12"> <div class="category"> <div class="my-panel parent"> <p class="description" id="dairy">Dairy</p> <a href="#" class="add-item"> <i class="fa fa-plus-circle" aria-hidden="true"></i> </a> </div> <ol class="dairy-product"></ol> </div> <div class="category"> <div class="my-panel parent"> <p class="description" id="fruits">Fruits</p> <a href="#" class="add-item"> <i class="fa fa-plus-circle" aria-hidden="true"></i> </a> </div> <ol class="fruits-product"></ol> </div>
对于id为catty
的元素,您有两个onchange
事件处理程序。 还有两个事件处理程序,用于在这两个onchange
处理程序中的同一元素上进行keydown
。 修改您的代码,以便简化处理程序:
$('#product-info').keydown(function(e) {
if (e.keyCode == 13) {
var add = $('#product-info').val();
var value = $("#catty").text();
if(value !== '') {
$('.' + value.toLowerCase() + '-product').append('<li>' + add + '</li>');
}
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.