Каждую форму обрабатывать отдельно serialize()
Привет Всем.
Подскажите, что вписать в приведенном ниже коде, чтобы каждая форма обрабатывалась отдельно. А, то сериализится все в общем списке
$(function() {
var c = $(".sticker .one img").attr("src");
var e = $(".sticker form input, .sticker form select");
var b = $(".product-details-block form.property-form");
e.on("input change", (function() {
$(".sticker .one img.m").each(function() {
var a = $(this);
a.attr("src", c + "?type=" + a.attr("data-type") + "&" + $(".sticker form").serialize())
});
$(".sticker .one img.n").attr("src", c + "?" + $(".sticker form").serialize());
e.each(function() {
var a = $(this);
var f = $(':input[name="' + a.attr("name") + '"]', b);
if (!f.length) {
return true
}
f.val(a.hasClass("form-value-text") ? $('>option[value="' + a.val() + '"]', a).text() : a.val())
})
})).first().triggerHandler("change");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<div class="sticker">
<div class="one">
<!-- Форма 1 -->
<img class="n" src="img/">
<form action="#">
<input type="text" name="one">
</form>
<!-- Форма 2 -->
<img class="n" src="img/">
<form action="#">
<input type="text" name="two">
</form>
</div>
</div>
|
Ramzes94,
сложно понять что вы хотите сделать.
var form = this.form;
$(".sticker .one img.m").each(function() {
var a = $(this);
a.attr("src", c + "?type=" + a.attr("data-type") + "&" + $(form).serialize())
});
$(".sticker .one img.n").attr("src", c + "?" + $(form).serialize());
|
Рони, код отредактировал, поправил.
Нужно чтобы в первую форму, а именно в тег img попадала информация с формы input name="one", а во вторую форму попадала информация input name="two". Вот не знаю как решить вопрос? Буду признателен:) |
Ramzes94,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
var forms = $(".sticker form");
$(".sticker .n").each(function(indx, img) {
var form = forms.eq(indx);
var src = img.src;
form.on("input change", function() {
img.src = src + "?" + $(form).serialize()
})
})
});
</script>
</head>
<body>
<div class="sticker">
<div class="one">
<!-- Форма 1 -->
<img class="n" src="img/">
<form action="#">
<input type="text" name="one">
</form>
<!-- Форма 2 -->
<img class="n" src="img/">
<form action="#">
<input type="text" name="two">
</form>
</div>
</div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 03:22. |