ノード/エクスプレス/モンゴーアプリがあり、AJAX呼び出しをしようとしていますが、データは保存されますが、AJAXのpreventDefault()
コール。なぜこうなった?ここでpreventDefault()を呼び出すときにAJAXフォームを再読み込みするページ
var categoryButton = function(){
event.preventDefault();
$("#add_category_form").submit(function (event){
event.preventDefault();
$.ajax({ //this gets the ID, you have to add a data-id="user._id" to the input you want to send the request from.
url: $("add_category_form").attr("action"),
type: "POST",
dataType: json,
done: function (result) {
alert("successful");
//console.log(result.categories);
},
fail: function (fail){
console.log(fail);
}
});
});
};
はHTML
<section id="event_categories_section" style="display:none;" class="col-md-6">
<form id="add_category_form" onsubmit="categoryButton" method="POST" action="/user/categories/<%=user._id%>">
<label for="input_category_name">Add a category for your Events</label>
<div class="input-group">
<div class="input-group-btn">
<input type="submit" id="add_category_button" value="Add Category!" class="btn btn-primary dropdown-toggle"></input>
</div>
<input class="form-control" id="input_category_name" name="user[category]" placeholder="Category Name" required type="text" minlength="2" data-id="<%= user._id %>">
</div>
</form>
<hr>
<div class="col-md-6">
<h3>List of Categories</h3>
<section class="well" id="list_category_section">
<% user.categories.forEach(function(category){ %>
<p><%= category %></p>
<% }); %>
</section>
</div>
</section>
try〜catch文でajax呼び出し部分を折り返してエラーになります。 – modernator