同じクラス名のフォームが複数あります
<form >
<input type="hidden" value="<%=ids%>" name="idd">
<input type="hidden" value="<%=email%>" name="cby">
<input type="text" class="cmd" name="cm" style="width:300px;" placeholder="comment">
<input type="submit" value="" style="display:none;">
</form>
<!-- n number of forms are generated using while loop-->
<form>
<input type="hidden" value="<%=ids%>" name="idd">
<input type="hidden" value="<%=email%>" name="cby">
<input type="text" class="cmd" name="cm" style="width:300px;" placeholder="comment">
<input type="submit" value="" style="display:none;">
</form>
次に、使用してみたこのn個のフォームの中から1つのフォームを送信するにはどうすればよいですか。
$(function () {
$('form').on('submit', function (e) {
$.ajax({
type: 'post',
url: 'addfr.jsp',
data: $('form').serialize(),
success: function () {
location.reload();
}
});
e.preventDefault();
});
});
ただし、nフォームの中で常に1番目のフォームを送信しています。 nフォームの中からランダムなフォームを送信するにはどうすればよいですか。誰か助けてくれませんか。
シリアル化するときは、フォームをthis
で参照する必要があります...
$(function () {
$('form').on('submit', function (e) {
$.ajax({
type: 'post',
url: 'addfr.jsp',
data: $(this).serialize(),
success: function () {
location.reload();
}
});
e.preventDefault();
});
});
このキーワードを使用します。イベントがトリガーされたフォームを送信します。
なぜlocation.reloadを使用しているのですか?
$('form').on('submit', function (e) {
$.ajax({
type: 'post',
url: 'addfr.jsp',
data: $(this).serialize(),
success: function () {
location.reload();
}
});
You can try this...
function submitForm(){
document.formName.action="actionName";
document.formName.submit();
}
<form method="post" name="formName" enctype="multipart/form-data">
....
<input type="button" onclick="submitForm()"/>
<form>