JavaScript | js - связать селекторы
DELETED
Автор
16 сентября 2017, в 14:51
Delete
$('#production_1, #production_2, #production_3, #production_4').submit(function (e) {
e.preventDefault();
var data = $(this).serialize();
var defaultAlert = $('#alert_production').html();
$.ajax({
cache: false,
type: this.method,
url: this.action,
data: data,
success: function (alert) {
$('#alert_production').html(alert).fadeOut(3000, function () {
$(this).html(defaultAlert).show();
});
}
});
});
Вопрос: как связать селекторы, например, чтобы при отправке с #production_3 обрабатывался #alert_production_3 ?
А то в данный момент все 4 привязаны к одному #alert_production
Спасибо.
Наверное не очень красивое, но рабочее решение, можно к формам добавить атрибут, например data-alert-id и извлекать его из e.target(форма)
________
посл. ред. 16.09.2017 в 15:15; всего 1 раз(а); by steel97
$('#production_1, #production_2, #production_3, #production_4').submit(function (e) {
e.preventDefault();
var data = $(this).serialize();
var originName = e.target.id;
var idFromName = originName.split('_')[1];
var defaultAlert = $('#alert_production_' + idFromName).html();
$.ajax({
cache: false,
type: this.method,
url: this.action,
data: data,
success: function (alert) {
$('#alert_production_' + idFromName).html(alert).fadeOut(3000, function () {
$(this).html(defaultAlert).show();
});
}
});
});
________
посл. ред. 16.09.2017 в 15:15; всего 1 раз(а); by steel97
DELETED
Автор
16 сентября 2017, в 15:25
Delete
+
DELETED
Автор
16 сентября 2017, в 17:44
Delete
сделал немного по другому, может пригодится кому
$('#production_1, #production_2, #production_3, #production_4').submit(function (e) {
e.preventDefault();
var data = $(this).serialize();
var target = $('#alert_'+$(this).attr('id'));
var defaultAlert = $(target).html();
$.ajax({
cache: false,
type: this.method,
url: this.action,
data: data,
success: function (alert) {
$(target).html(alert).fadeOut(3000, function () {
$(this).html(defaultAlert).show();
});
}
});
});