使用PHP循环动态创建表单,并从DB中显示一行。当他改变数量时,我要求用户通过提示输入,但是当我用AJAX将它发送给PHP时,它是空的。我想这是因为隐藏的输入“new_message”在AJAX向PHP脚本发送值的同时被填充,所以当时是空白。对于生成的第一行,我收到一条消息,但不是任何其他行。
你能帮助我如何将提示输入传递给PHP脚本吗?
public static OffsetDateTime ToOffsetDateTimeUTC (this LocalDate localDate, string tzId) {
LocalTime time = new LocalTime (23, 59, 59);
LocalDateTime localDateTime = (localDate + time);
DateTimeZone dtz = DateTimeZoneProviders.Tzdb[tzId];
Offset offset = dtz.GetUtcOffset (Instant.FromUtc (localDateTime.Year, localDateTime.Month, localDateTime.Day, time.Hour, time.Minute));
return new OffsetDateTime (localDateTime, offset);
}
//Update qty on article
$('.update_qty').on('change', function() {
var message = prompt("Upišite razlog za izmjenu količine:");
//e.preventDefault();
//Get message value
$('#new_message').val(message);
var data = $('#form1').serializeArray();
if (message != "" || message != NULL) {
$.ajax({
type: 'POST',
url: 'update_qty.php',
data: data,
success: function(data) {
alert(data);
}
});
} else {
alert("Empty");
e.PreventDefault();
return false;
}
});
答案 0 :(得分:0)
问题是您有多个具有相同id
的元素。你不应该这样做。您检查jQuery中的值,然后发送不同的表单数据。
这一切都只是休息,我无法检查。但请尝试将id
更改为class
,并确保发送正确的表单数据。
例如更改此
<form name="form1" id="form1" method="POST" action="update_qty.php">
到这个
<form name="form1" id="form<?= $sales_key; ?>" method="POST" action="update_qty.php">