动态生成的文本框的jquery自动完成不工作
我不能在动态生成的文本框上进行自动完成,我已经搜索了internet,但找不到任何解决方案。我正在分享我迄今为止所做的工作: JQUERY:动态生成的文本框的jquery自动完成不工作,jquery,ajax,json,Jquery,Ajax,Json,我不能在动态生成的文本框上进行自动完成,我已经搜索了internet,但找不到任何解决方案。我正在分享我迄今为止所做的工作: JQUERY: function bindAutoComplete(classname) { $("." + classname).autocomplete({ source: function (request, response) { $.ajax({ url: '/Admin/Ticke
function bindAutoComplete(classname) {
$("." + classname).autocomplete({
source: function (request, response) {
$.ajax({
url: '/Admin/Ticket/GetPart',
type: "GET",
dataType: "json",
data: { term: request.term },
success: function (data) {
if (data != null) {
if (data.length > 0) {
response($.map(data, function (item) {
return { label: item.PartNumber, value: item.PartNumber };
}))
}
else {
response([{ label: 'No results found.' }]);
}
}
}
})
},
});
}
// fetch part number
$(document).ready(function () {
$("#PartNumber23").autocomplete({
source: function (request, response) {
$.ajax({
url: '/Admin/Ticket/GetPart',
type: "GET",
dataType: "json",
data: { term: request.term },
success: function (data) {
if (data != null) {
if (data.length > 0) {
response($.map(data, function (item) {
return { label: item.PartNumber, value: item.PartNumber };
}))
}
else {
response([{ label: 'No results found.' }]);
}
}
}
})
},
});
$('#PartNumber23').keyup(function () {
var errormsg = "";
var amount = $('#PartNumber23').val();
$.ajax({
type: "GET",
url: '/Admin/Ticket/GetPart',
data: { 'term': amount },
dataType: "json",
success: function (data) {
if (data != null) {
if (data.length > 0) {
$('#Manufacturer').val(data[1].Manufacturer);
$('#DateCode').val(data[0].DateCode);
$('#Package').val(data[0].PackageCase);
$('#buyingprice').val(data[0].Price);
}
else {
$('#Manufacturer').val('');
$('#DateCode').val('');
$('#Package').val('');
$('#buyingprice').val('');
}
}
},
error: function (jqXHR, exception) {
$('#error').html(jqXHR)
}
});
});
})
var key = function () {
var errormsg = "";
var amount = $('#buyingprice').val();
$.ajax({
type: "POST",
url: "/Admin/Ticket/ConvertCurrency",
data: "{amount:" + amount + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$('#bpusd').val(data);
},
error: function (jqXHR, exception) {
// $('#error').html("Primitive Functions not allowed.")
}
});
}
var key2 = function () {
var errormsg = "";
var amount = $('#customprice').val();
$.ajax({
type: "POST",
url: "/Admin/Ticket/ConvertCurrency",
data: "{amount:" + amount + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$('#amtusd').val(data);
},
error: function (jqXHR, exception) {
// $('#error').html("Primitive Functions not allowed.")
}
});
}
$(document).ready(function () {
$('#PartNumber23').keyup(key);
$('#buyingprice').keyup(key);
$('#customprice').keyup(key2);
$('#Quantity').keyup(function () {
var qty = $('#Quantity').val();
$('#CustomQuantity').val(qty);
})
})
$("#AddMore").click(function () {
$("#maintable").each(function () {
var tds = '<tr>';
jQuery.each($('tr:last td', this), function () {
tds += '<td>' + $(this).html() + '</td>';
});
tds += '</tr>';
if ($('tbody', this).length > 0) {
$('tbody', this).append(tds);
$("#delete").fadeIn('200');
}
else {
$(this).append(tds);
}
});
bindAutoComplete('inputs')
});
函数bindAutoComplete(类名){
$(“+classname).自动完成({
来源:功能(请求、响应){
$.ajax({
url:“/Admin/Ticket/GetPart”,
键入:“获取”,
数据类型:“json”,
数据:{term:request.term},
成功:功能(数据){
如果(数据!=null){
如果(data.length>0){
响应($.map)(数据、功能(项){
返回{标签:item.PartNumber,值:item.PartNumber};
}))
}
否则{
响应([{label:'未找到结果'}]);
}
}
}
})
},
});
}
//取零件号
$(文档).ready(函数(){
$(“#零件号23”)。自动完成({
来源:功能(请求、响应){
$.ajax({
url:“/Admin/Ticket/GetPart”,
键入:“获取”,
数据类型:“json”,
数据:{term:request.term},
成功:功能(数据){
如果(数据!=null){
如果(data.length>0){
响应($.map)(数据、功能(项){
返回{标签:item.PartNumber,值:item.PartNumber};
}))
}
否则{
响应([{label:'未找到结果'}]);
}
}
}
})
},
});
$('#零件号23').keyup(函数(){
var errormsg=“”;
var金额=$('#零件号23').val();
$.ajax({
键入:“获取”,
url:“/Admin/Ticket/GetPart”,
数据:{‘术语’:金额},
数据类型:“json”,
成功:功能(数据){
如果(数据!=null){
如果(data.length>0){
$('#Manufacturer').val(数据[1].Manufacturer);
$('#DateCode').val(数据[0].DateCode);
$('#Package').val(数据[0].PackageCase);
$('#buyingprice').val(数据[0].Price);
}
否则{
$('制造商').val('');
$(“#日期代码”).val(“”);
$('#Package').val('');
$('buyingprice').val('');
}
}
},
错误:函数(jqXHR,异常){
$('#error').html(jqXHR)
}
});
});
})
var key=函数(){
var errormsg=“”;
var金额=$(“#购买价格”).val();
$.ajax({
类型:“POST”,
url:“/Admin/Ticket/ConvertCurrency”,
数据:“{金额:“+amount+”}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(数据){
$('bpusd').val(数据);
},
错误:函数(jqXHR,异常){
//$('#error').html(“不允许使用基本函数”)
}
});
}
var key2=函数(){
var errormsg=“”;
var金额=$('#customprice').val();
$.ajax({
类型:“POST”,
url:“/Admin/Ticket/ConvertCurrency”,
数据:“{金额:“+amount+”}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(数据){
$('amtusd').val(数据);
},
错误:函数(jqXHR,异常){
//$('#error').html(“不允许使用基本函数”)
}
});
}
$(文档).ready(函数(){
$(“#零件号23”).keyup(键);
$('buyingprice').keyup(键);
$(#customprice').keyup(key2);
$(“#数量”).keyup(函数(){
变量数量=$(“#数量”).val();
$('#CustomQuantity').val(数量);
})
})
$(“#添加更多”)。单击(函数(){
$(“#maintable”)。每个(函数(){
var tds=“”;
每个($('tr:last td',this),函数(){
tds+=''+$(this.html()++'';
});
tds+='';
如果($('tbody',this).length>0){
$('tbody',this).append(tds);
$(“#删除”).fadeIn('200');
}
否则{
$(此).append(tds);
}
});
bindAutoComplete('输入')
});
HTML:
零件号
制造
直流
一包
数量。需要
数量。提供
英国石油公司
英国石油公司(美元)
<table id="maintable">
<thead>
<tr>
<th>
Part No
</th>
<th>
MFG
</th>
<th>
DC
</th>
<th>
PKG
</th>
<th>
QTY. Need
</th>
<th>
QTY. Offer
</th>
<th>
BP
</th>
<th>
BP(USD)
</th>
<th>
AMT (USD)
</th>
<th>
LT Days
</th>
<th>
Desc
</th>
<th>
Note
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<input class="inputs" type="text" name="abcd" id="PartNumber23" style="width:130px;" />
</td>
<td>
<input class="text-box single-line" id="Manufacturer" name="Manufacturer" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="Manufacturer" data-valmsg-replace="true"></span>
</td>
<td>
<input class="text-box single-line" id="DateCode" name="DateCode" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="DateCode" data-valmsg-replace="true"></span>
</td>
<td>
<input class="text-box single-line" id="Package" name="Package" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="Package" data-valmsg-replace="true"></span>
</td>
<td>
<input class="text-box single-line" data-val="true" data-val-number="The field Quantity must be a number." data-val-required="The Quantity field is required." id="Quantity" name="Quantity" style="width:35px;" type="number" value="" />
<span class="field-validation-valid" data-valmsg-for="Quantity" data-valmsg-replace="true"></span>
</td>
<td>
<input class="text-box single-line" id="CustomQuantity" name="CustomQuantity" style="width:35px;" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="CustomQuantity" data-valmsg-replace="true"></span>
</td>
<td>
<input class="text-box single-line" id="buyingprice" name="BuyingPrice" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="BuyingPrice" data-valmsg-replace="true"></span>
</td>
<td>
<input id="bpusd" name="ConvertedBP" readonly="readonly" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="ConvertedBP" data-valmsg-replace="true"></span>
</td>
<td>
<input id="amtusd" name="ConvertedAmount" readonly="readonly" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="ConvertedAmount" data-valmsg-replace="true"></span>
<span id="error" class="error"></span>
</td>
<td>
<input id="LTDays" name="LTDays" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="LTDays" data-valmsg-replace="true"></span>
</td>
<td>
<select class="drop" id="Description" name="Description"><option>Original ROHS</option>
<option>ROHS Compliance</option>
</select>
<span class="field-validation-valid" data-valmsg-for="Description" data-valmsg-replace="true"></span>
</td>
<td>
<textarea class="txtarea text-box multi-line" id="Note" name="Note" placeholder="Any Note With Ticket">
</textarea>
<span class="field-validation-valid" data-valmsg-for="Note" data-valmsg-replace="true"></span>
</td>
</tr>
</tbody>
</table>
bindAutoComplete('inputs');
$("#AddMore").click(function () {
$("#maintable").each(function () {
var tds = '<tr>';
jQuery.each($('tr:last td', this), function () {
tds += '<td>' + $(this).html() + '</td>';
});
tds += '</tr>';
if ($('tbody', this).length > 0) {
$('tbody', this).append(tds);
bindAutoComplete('inputs');
$("#delete").fadeIn('200');
}
else {
$(this).append(tds);
bindAutoComplete('inputs');
}
});
});
function bindAutoComplete(classname){
$("."+classname).autocomplete({
source: function (request, response) {
$.ajax({
url: '/Admin/Ticket/GetPart',
type: "GET",
dataType: "json",
data: { term: request.term },
success: function (data) {
if (data != null) {
if (data.length > 0) {
response($.map(data, function (item) {
return { label: item.PartNumber, value: item.PartNumber };
}))
}
else {
response([{ label: 'No results found.' }]);
}
}
}
})
},
});
}
<input type="text" class="inputs" name="abcd" class="PartNumber23" style="width:130px;" />