У меня есть страница с перечнем товаров, где все перечисленные товары имеют разные названия и идентификаторы формы, в то время как l oop, как указано в следующем фрагменте кода. Я хочу сделать это, когда пользователь нажимает кнопку «Добавить» для определенного продукта, тогда указанная форма c продукта должна быть отправлена с использованием AJAX / jQuery.
product_listing. php
<script language="JavaScript" src="./product_listing.js"></script>
while loop to list products on page {
<form id="frm_add<?php print $rs_list->Fields("pkid"); ?>" name="frm_add<?php print $rs_list->Fields("pkid"); ?>" novalidate>
<input type="hidden" name="hdn_prodpkid" id="hdn_prodpkid" value="<?php print $rs_list->Fields("pkid"); ?>">
... other variables...
<button type="submit" name='btn_addtocart' id='btn_addtocart'>Add</button>
</form>
end of while loop }
Мне нужен идентификатор отправленной формы, чтобы я мог получить значения полей ввода для этой отправленной формы. Но при каждой отправке формы я получал идентификатор последней формы.
Так как я могу получить уникальный (только отправленный) идентификатор формы на странице JS? Пожалуйста, порекомендуйте.
Приведенный ниже код отлично работает, когда есть одна форма для отправки. В этом случае идентификатор формы предопределен на обеих страницах. php и. js.
product_listing. js
$(function() {
$("#"+NEED_SUBMITTED_FORM_ID_HERE+" input, #"+NEED_SUBMITTED_FORM_ID_HERE+" select").jqBootstrapValidation({
preventSubmit: true,
submitError: function($form, event, errors) {
...other code...
},
submitSuccess: function($form, event) {
event.preventDefault();
var hdn_prodpkid = $("input#hdn_prodpkid").val();
... other variables...
$.ajax({
url: "./product_addtocart_p.php",
type: "POST",
data: {
hdn_prodpkid: hdn_prodpkid,
... other variables...
},
cache: false,
success: function(data)
{
...other code...
}
}
});
});