在webix UI模式中表单数据

Det*_*yer 7 javascript jquery webix

我正在使用Webix UI模式,这就是我使用它的方式:

this.add = function () {
scrollArea.css("overflow", "hidden");
$.ajax({
	type: "GET",
	url: "/detail/create",
	success: function (form) {
		webix.message.keyboard = false;
		webix.modalbox({
			title: "New detail",
			buttons: ["Accept", "Decline"],
			text: form,
			width: 400,
			callback: function (result) {
				switch (result) {
					case "0":
						addDetail();
						break;
					case "1":
						break;
				}
				scrollArea.css("overflow", "auto");
			}
		});
	}
});
function addDetail() {
	$.ajaxSetup({
		headers: {
			'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
		}
	});
	$.ajax({
		type: "POST",
		url: "/detail/store",
		data: $('#detail_add').serialize(),
		contentType: "JSON",
		processData: false,
		success: function () {
		}
	});
}
};


And form's HTML:
Run Code Online (Sandbox Code Playgroud)
<form action="" id="detail_add" method="post">
<input type="text" name="name" placeholder="Name">
<input type="text" name="article" placeholder="Article">
<input type="hidden" name="location_id" placeholder="1">
<input type="hidden" name="_token" value="{{ csrf_token() }}"/>
</form>
Run Code Online (Sandbox Code Playgroud)

当我单击模态中的接受时,我的JSON为空.我该如何解决?我试图通过console.log获取输入值,但它也是空的.

Det*_*yer 0

我已经找到了解决方案。这真的很简单,但我犯了一个错误。我需要使用

switch (result) {
    case "0":
       addDetail;
       break;
    case "1":
       break;
}
Run Code Online (Sandbox Code Playgroud)

代替

switch (result) {
    case "0":
       addDetail();
       break;
    case "1":
       break;
}
Run Code Online (Sandbox Code Playgroud)

因为 addDetail() 立即调用函数,因此我发送的数据为空