Javascript 自动完成动态文本框不工作
我试着从另一个问题中寻找答案,但没有得到任何运气 我有一个动态文本框,想在上面应用一些自动完成功能,下面是我的代码 Javascript:Javascript 自动完成动态文本框不工作,javascript,jquery,jquery-autocomplete,Javascript,Jquery,Jquery Autocomplete,我试着从另一个问题中寻找答案,但没有得到任何运气 我有一个动态文本框,想在上面应用一些自动完成功能,下面是我的代码 Javascript: $(function () { var scntDiv = $('#p_scents'); var i = $('#p_scents p').size(); $('#addScnt').live('click', function () { $(' <tr> <td> <input type="text" id="k
$(function () {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size();
$('#addScnt').live('click', function () {
$(' <tr> <td> <input type="text" id="kdbr" class ="kdbr" style="width:300px;" name="kdbr[]" value=""/></td><td> <input type="text" id="nmbr" class ="nmbr" style="width:300px;" name="nmbr[]" value="" /></td><td><input type="text" id="jumlah" style="width:80px;" name="jumlah[]" value="" /></td></label> <td><input id="remScnt" style="width:80px;" class="btn" type="button" value="Remove" ></td> </tr>').appendTo(scntDiv);
i++;
return false;
});
$('#remScnt').live('click', function () {
//if (i > 1) {
$(this).parents('tbody').remove();
// i--;
//}
return false;
});
$(".kdbr").autocomplete({
source: function (request, response) {
$.ajax({
url: "<?php echo base_url();?>js/coba3.php",
dataType: "json",
data: {
term: request.term
},
success: function (data) {
// var data = $.parseJSON(response);
response($.map(data, function (el) {
return {
value: el.kdbr,
label: el.nmbr
};
}));
}
});
},
select: function (event, ui) {
// Prevent value from being put in the input:
event.preventDefault();
$('.kdbr').val(ui.item.value);
// Set the next input's value to the "value" of the item.
$('.nmbr').val(ui.item.label);
}
});
});
html:
<table id="p_scents" class="table table-striped table-bordered">
<thead>
<tr>
<th style="width:400px;">Kode Barang</th>
<th style="width:400px;">Nama Barang</th>
<th style="width:100px;">Jumlah</th>
<th style="width:100px;">Delete</th>
</tr>
</thead>
<tbody>
<label for="p_scnts">
<tr><td> <input type="text" id="kdbr" class ="kdbr" style="width:300px;" name="kdbr[]" value="" /></td><td> <input type="text" id="nmbr" class ="nmbr" style="width:300px;" name="nmbr[]" value="" /></td><td><input type="text" id="jumlah" style="width:80px;" name="jumlah[]" value="" /></td></label> <td><input id="remScnt" style="width:80px;" class="btn" type="button" value="Remove" ></td></tr>
</tbody>
“自动完成”只在第一行工作,该行不是动态的,每次我尝试将鼠标指向“自动完成”列表或尝试向下指向时,列表将立即消失
有人能告诉我哪里做错了吗
live已弃用,请改为在上使用。
对于动态添加的元素,请使用
$(document).on('click', '.remScnt', function() {});
而不是
$('.remScnt').on('click', function() {});
由于标签与tr混合,您的html结构不正确
对于动态添加的元素,应调用autocomplete来处理此自动完成设置,并使其成为全局设置。
删除行的函数不正确。
自动完成选择事件处理程序不正确:它将所选值添加到所有行。
自动完成源函数被替换为仅用于测试的数组。
live已弃用,请改为在上使用。
对于动态添加的元素,请使用
$(document).on('click', '.remScnt', function() {});
而不是
$('.remScnt').on('click', function() {});
由于标签与tr混合,您的html结构不正确
对于动态添加的元素,应调用autocomplete来处理此自动完成设置,并使其成为全局设置。
删除行的函数不正确。
自动完成选择事件处理程序不正确:它将所选值添加到所有行。
自动完成源函数被替换为仅用于测试的数组。
live已弃用,请改为在上使用。
对于动态添加的元素,请使用
$(document).on('click', '.remScnt', function() {});
而不是
$('.remScnt').on('click', function() {});
由于标签与tr混合,您的html结构不正确
对于动态添加的元素,应调用autocomplete来处理此自动完成设置,并使其成为全局设置。
删除行的函数不正确。
自动完成选择事件处理程序不正确:它将所选值添加到所有行。
自动完成源函数被替换为仅用于测试的数组。
live已弃用,请改为在上使用。
对于动态添加的元素,请使用
$(document).on('click', '.remScnt', function() {});
而不是
$('.remScnt').on('click', function() {});
由于标签与tr混合,您的html结构不正确
对于动态添加的元素,应调用autocomplete来处理此自动完成设置,并使其成为全局设置。
删除行的函数不正确。
自动完成选择事件处理程序不正确:它将所选值添加到所有行。
自动完成源函数被替换为仅用于测试的数组。
我跟随你的指示,获得每个字段的列表,但每次我试图指向鼠标或按下按钮时,自动完成建议列表都会消失。@ryuusourtaker它会消失在小提琴中还是在你的网站上?如果在fiddle中,你使用什么浏览器?我找到了列表不成样子的原因,因为我不小心声明了js文件两次..然后你的代码像魔术一样工作:我已经将它标记为接受答案:我跟随你的领导,获得每个字段的列表,但每次我试图指向鼠标或按下按钮,自动完成建议列表将消失。@ryuusourtaker它会消失在小提琴中还是在你的网站上?如果在fiddle中,你使用什么浏览器?我找到了列表不成样子的原因,因为我不小心声明了js文件两次..然后你的代码像魔术一样工作:我已经将它标记为接受答案:我跟随你的领导,获得每个字段的列表,但每次我试图指向鼠标或按下按钮,自动完成建议列表将消失。@ryuusourtaker它会消失在小提琴中还是在你的网站上?如果在fiddle中,你使用什么浏览器?我找到了列表不成样子的原因,因为我不小心声明了js文件两次..然后你的代码像魔术一样工作:我已经将它标记为接受答案:我跟随你的领导,获得每个字段的列表,但每次我试图指向鼠标或按下按钮,自动完成建议列表将消失。@ryuusourtaker它会消失在小提琴中还是在你的网站上?如果在fiddle中,你使用什么浏览器?我已经找到了列表消失的原因,因为我不小心声明了js文件两次..然后你的代码像魔术一样工作:我已将其标记为接受答案: