2017-03-07 1 views
0

안녕하세요 내가 jQuery를 사용하여 직렬화하고 싶은 HTML 양식을 가지고 있지만 나는이 같은 형식 싶어 :jQuery를 JSON 얻는 방법 { "은 inputName": "값"...}

{ "Message":"message textg","Tags":"tags text","Facebook":"true"...} 

내 양식이 입력은 다음과 같습니다

<textarea name="Message" rows="5" value="" required /> 
<input type="text" name="Tags" value=""> 
<input type="checkbox" name="Facebook" checked="checked"> 
<input type="checkbox" name="Twitter" checked="checked"> 
<textarea name="FacebookText" rows="5" value="" /> 
<textarea rows="5" name="TwitterText" value="" /> 

내가 할 경우 :

:

JSON.stringify($('#form-message').serialize());은 내가 문자열을 얻을 0

내가 할 경우

JSON.stringify($('#form-message').serializeArray());

은 내가 문자열을 얻을 :

[{"name":"Message","value":"Message Text"},{"name":"Tags","value":"Tags"},{"name":"Facebook","value":"on"},{"name":"FacebookText","value":"Facebook Text"},{"name":"Twitter","value":"on"},{"name":"TwitterText","value":"Twitter Text"}] 

답변

0

최초의 예에서는, 당신은 문자열을 JSON.stringify. 잘못된 결과가 반환됩니다. 다음과 같이 시도해보세요.

var paramObj = {}; 
$.each($('#form-message').serializeArray(), function(_, kv) { 
paramObj[kv.name] = kv.value; 
}); 
var data = JSON.stringify(paramObj);