Автозаполнение текстового поля для динамически добавляемого текстового поля в MVC
уважаемый друг,
Я закодировал автозаполнение для динамически добавляемого текстового поля. он выполняет только первую строку. я добавляю еще одну строку, после чего автозаполнение не работает. пожалуйста, кто-нибудь, помогите мне..
Спасибо и с уважением,
Вивек. Р
Что я уже пробовал:
Скрипт:
< script type= "text/javascript">
$(документ).готово(функция () {
$(документ).на("клик", ".classAdd", функция () { //используется для получения события click для динамически созданных кнопок
var ic = $('#ItemCode');
var rc = $('#RateCode');
ВАР имя_экземпляра = $('#имя');
// Добавить строки
ВАР количество строк = ($('.данных-контакт-персона').длина + 1) - 1;
var contactdiv =" +
'< input type= "text" id=" ItemName " name=" ItemName "class=" form-control " />' +
в '<тип входного="текст" идентификатор="IRateCode" имя="[' + строк + '].IRateCode "class=" form-control" />' +
в '<тип входного="текст" идентификатор="код" имя="[' + строк + '].Артикул" класс="форма контроля" /&ГТ;' +
в '<тип входного="текст" идентификатор="QtyRequested" имя="[' + строк + '].QtyRequested" класс="форма контроля" /&ГТ;' +
в '<кнопка типа="кнопка" ID="btnAdd" класс="БТН БТН-хз БТН-первичный classAdd"и GT;добавить больше&ЛТ;/кнопку&ГТ;' +
в '<кнопка типа="кнопка" ID="btnDelete" класс="deleteContact БТН БТН БТН-опасность БТН-хз">удалить&ЛТ;/кнопку&ГТ;' +
'';
$('#maintable'). append(contactdiv); / / добавление этих элементов управления в класс Main table
// оповещения(количество строк);
});
$(документ).на("клик", ".deleteContact", функция () {
$(этот).ближайший("тр").удалить(); // ближайший использован для того чтобы извлечь соответствующие 'ТР', в котором у меня есть контроль
});
//Функция автозаполнения
$("#ItemName"). автозаполнение({
источник: функция (запрос, ответ) {
$.Аякс({
url: "/MatReq/GetData?term= " + request. term,
тип: "пост",
тип данных: "json",
успех: функция (данные) {
if (data. length > 0) {
ответ ($. map(data, function (item) {
возвращение { метка: товар.Имя, значение: элемент.Имя
};
}))
}
ещё {
ответ([{ label: 'no results found.', val: -1}]);
}
}
})
},
выберите: функция (событие, пользовательский интерфейс) {
ВАР имя = ИП.товар.значение;
если (ИП.товар.Валь == -1) {
СК.Валь(");
ру.Валь(");
имя_экземпляра.Валь(");
возвращать false;
}
ещё {
$.помощью метода getjson('@URL-адрес.Действий("GetDetail")', { имя: пользовательского интерфейса.товар.значение }, функция (данных) {
если (данные) {
$('#ItemCode'). val(data. icode);
$('#RateCode'). val(data.rcode);
}
});
}
},
// изменение: txtOneChanged,
сообщения: {
noResults: "", результаты: ""
}
});
< / script>
Смотреть:
foreach (var i в модели)
{
@HTML-код.Текстовое поле("Имя", значение null, новый { идентификатор = "наименование", @класс = "форма контроля" автозаполнение = "выкл" })
@HTML-код.TextBoxFor(а =&ГТ;а[Дж].IRateCode, новый { идентификатор = "RateCode", @класс = "форма контроля" автозаполнение = "выкл" })
@Html. TextBoxFor(a => a[j].Артикул, новый { идентификатор = "артикул", @класс = "форма контроля" автозаполнение = "выкл" }) @HTML-код.TextBoxFor(а =&ГТ; а[Дж].QtyRequested, новый { идентификатор = "QtyRequested", @класс = "форма контроля" автозаполнение = "выкл" })
&ЛТ;кнопка типа="кнопка" ID="btnAdd" класс="БТН БТН-хз БТН-первичный classAdd"и GT;добавить больше&ЛТ;/кнопку&ГТ;
Дж++;
}