Как динамически передать идентификатор в URL правила валидатора Bootstrap: удаленный для того же поля ввода формы?
Bootstrap Validator v 0.5.2 повторно используется для проверки формы (#myForm) в модальном режиме. Нужно динамически передавать уникальный идентификатор (внешний ключ) в "URL" "удаленного" правила, когда форма загружается по модальному адресу, как показано ниже.
var remoteUrl = "/remoteurl/";
var id = <Foreign key of the record>
$('#myForm').bootstrapValidator({
feedbackIcons: {
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove',
validating: 'glyphicon glyphicon-refresh'
},
fields: {
fieldName: {
validators: {
remote: {
url: remoteUrl + id, //dynamically passing id. // but not passing dynamically.
type: 'POST',
message: "This is the message!"
}
}
}
}
});
Выпуск:
При модальной загрузке id успешно переходит в форму динамически. Хотя "bootstrapValidator" получает самый первый переданный "id" в форму, если только страница не перезагружается.
1 ответ
Решение
Нашел решение!
Добавить скрытое поле ввода для добавления внешнего ключа.
<input type="hidden" value="" name="foreignKey" id="foreignId">
И, динамически передать внешний ключ в это поле.
$('#foreignId').val(id);
Затем, как следует
fieldName: {
validators: {
remote: {
url: remoteUrl,
data: function(validator, $field, value) {
return {
foreignKey: validator.getFieldElements('foreignKey').val()
};
},
type: 'POST',
message: "This is the message!"
}
}
}
Теперь это работает для меня. "Идентификатор" динамически передается для удаленного метода.