我编写了一个函数,该函数将div类中的所有选定字段(座位)呈现出来。当我单击它们时,需要按其名称显示它们。 现在,我希望将这些字段写入单击时选择的输入字段中。
var rowRange = 'abcdefghijklmnopqrstuvwxyz'.split('');
var $cart = $('#selected-seats'),
sc = $('#seat-map').seatCharts({
map: [
'aaaaa__aaaaa',
'aaaaa__aaaaa',
'aaaaa__aaaaa'
],
naming : {
top : false,
getLabel : function (character, row, column) {
return rowRange[row - 1].toUpperCase() + column;
},
},
click: function () {
if (this.status() === 'available') {
$('<li>'+this.settings.label+'</b></li>')
.appendTo($cart);
$counter.text(sc.find('selected').length+1);
return 'selected';
});
});
这是我的表单输入字段
<input type="text" id="selected-seats" class="form-control" size="20">
该示例工作正常,但在将其与输入字段连接时遇到问题。
if (this.status() == 'available') {
$('<li>'+this.settings.label+'</b></li>')
.appendTo($cart);
不是。
if (this.status() == 'available') {
document.getElementById('selected-seats')
.appendTo($cart);
答案 0 :(得分:1)
document.getElementById('selected-seats')
上面的行返回一个纯DOM元素,没有被任何jQuery对象包装。 DOM元素没有appendTo
方法-jQuery对象却没有。因此,您需要做的是要么使用jQuery通过ID获取元素(下面的第一个示例),要么使用它包装本机getElementById
方法的结果(下面的第二个示例)。
// First example
$('#selected-seats').appendTo($cart)
// Second example
var selectedSeatsElement = document.getElementById('selected-seats');
$(selectedSeatsElement).appendTo($cart)
答案 1 :(得分:0)
我刚刚修好了!
我需要为输入字段返回值。
$('#selected-seats')
.attr('id', 'cart-item-'+this.settings.id)
.val(this.settings.label)
.appendTo($cart);