내 애플 리케이션을 구축하기 위해 Jquery와 백본을 사용하고 있습니다. 최근에는 require.js로 AMD 아키텍처의 프로젝트를 다시 작성합니다. 그런 다음 양식을 게시 할 때 문제가 발생합니다. 이것은 내 양식입니다 :jQuery. serializeArray() 빈 배열을 반환합니다
*<div data-role="page" id="login" data-theme="a">
<form class="loginPageForm">
<div data-role="content" style="padding: 15px">
<h3 id="login_heading">
Login
</h3>
<div data-role="fieldcontain">
<fieldset data-role="controlgroup" id="email_fieldset">
<label for="email_textinput" >
Email
</label>
<input id="email_textinput" placeholder="[email protected]" value="" type="text" />
</fieldset>
</div>
<div data-role="fieldcontain">
<fieldset data-role="controlgroup" id="password_fieldset">
<label for="password_textinput">
Password
</label>
<input id="password_textinput" placeholder="Secret Password" value="" type="password" />
</fieldset>
</div>
<input type="submit" class="btn" value="Login"/>
<a data-role="button" data-transition="none" data-theme="f" href="#register" id="registerButton">Register</a>
</div>
</form>
</div>*
내가 사용하고 있습니다 : JSON을 만들기위한
**$.fn.serializeObject = function(){
var arrayData, objectData;
arrayData = $(this).serializeArray();
objectData = {};
$.each(arrayData, function() {
var value;
if (this.value != null) {
value = this.value;
} else {
value = '';
}
if (objectData[this.name] != null) {
if (!objectData[this.name].push) {
objectData[this.name] = [objectData[this.name]];
}
objectData[this.name].push(value);
} else {
objectData[this.name] = value;
}
});
return objectData;
}**
.. 문제는 라인 $ (이) .serializeArray는()이다; $ (이) .serializeArray() : 이는 빈 배열을 반환 배열 [0] 길이 : 0 프로토 :
arrayData: Array[0]
objectData: undefined
this: v.fn.v.init[1]
0: form.loginPageForm
0: fieldset#email_fieldset
1: input#email_textinput
2: fieldset#password_fieldset
3: input#password_textinput
4: input.btn
: 배열 [0]
내 목적은 "이"처럼 보인다
AMD 아키텍처로 게임하기 전에이 양식을 어떻게 피하면 좋을까요?
실제로 필드에 이름을 지정하지 않았기 때문일 수 있습니다. 이름이있는 입력란 만 처리됩니다. – MatRt