2012-05-29 3 views
1

CSV 데이터를 가져 와서 입력 필드가있는 사용자에게 표시하고 있습니다. 이 값들을 Json을 업데이트하고 XML로 변환하려고합니다. 사용자 입력으로 Json을 업데이트 할 수 있습니까 아니면이를 수행하는 다른 방법이 있습니까?JSON을 사용자 입력으로 업데이트하고 XML로 변환

$(document).ready(function() { 
    $.getJSON(
     'CSV.php', 
     function(data) { 
      $.each(data, function(index, element) { 
       newDiv = $('<div/>').addClass('row').appendTo('#showdata'); 
       $('<div class="options">Payment Format: <select name="Payment_Format"><option value="CCC" selected="selected">Company to Company</option><option value="PPP">Company to Person</option></select> </div>').appendTo(newDiv); 
       $('<div class="field">' + value + '</div>').appendTo(newDiv); 
      } 
     } 
+2

양식에 있습니까? JSON.stringify를 사용하여 데이터를 json으로 변환 할 수 있습니다. – mattytommo

+0

현재 형식이 아닌 최종 결과는 XML 형식이어야합니다. 나는 현재 사용자 입력을 받아 Json 형식의 데이터를 업데이트 한 다음 XML을 다시 포맷하는 방법에 대해 혼란 스러울뿐입니다. – MG1

답변

1

이 흐름에 따라 꽤 많이 필요합니다 : 당신의 프로그래밍 언어에 대한 기본

  • (당신은 자바 스크립트를 사용하고 있기 때문에이 쉬워야한다)

    1. 에 "객체"로 JSON을 구문 분석을 사용자 입력을 검색하고 그에 따라 객체를 업데이트하십시오 (obj.name = user_input)
    2. 객체를 XML (ew)로 변환하여 출력하십시오. previous SO post

    에서 an example of this을 확인 나는 완전히 JSON을 사용하도록 강요하지 않을거야하지만 할 수 있다면 나는 그것을 고려하도록 요청합니다. 그것은 JS와 훨씬 더 좋게 놀고 거기에 다른 언어를위한 수많은 도서관이 있습니다. XML보다 훨씬 적은 데이터를 사용합니다. 손이 묶여 있다면 접근 방법이 있습니다

  • +0

    내 고객에게 내 보낸 XML이 필요합니다. 질문 - 2 단계에서 $ .each 루프를 진행하면서 JSON의 모든 키와 값을 추가하고 새 객체에 추가하는 가장 좋은 방법은 무엇입니까? – MG1

    +0

    루핑은 무엇입니까? JSON (1 단계)을 파싱하면 객체가 생성되고 객체의 입력에서 모든 키/값을 이미 갖게됩니다. 2 단계는 변경하려는 것만 업데이트하는 것입니다. 이해가 되니? –

    +0

    두 가지 일이 동시에 발생하기 때문에 : 1. 값을 변경하는 옵션과 함께 HTML을 통해 사용자에게 데이터가 표시되고 2. 가져온 데이터와 사용자가 편집 한 값을 포함하는 객체가 XML로 변환됩니다. 어쩌면 나는이 과정을 오해하고있다. 그러나 내 XML은 매우 복잡하고 많은 중첩이있다.XML 요구 사항에 맞게 객체를 구성하는 방법을 파악하는 데 어려움을 겪고 있습니다. – MG1

    2

    JSON을 업데이트하려면 JavaScript 객체로 디코드해야합니다 ($.getJSON). 그런 다음 다른 객체와 마찬가지로 JavaScript 객체를 조작합니다. ..

    { person : { name : "Paul", parents : [ "Alice", "Bob" ] } } 
    
    :

    당신이 먼저 JSON은 XML에 자연적으로 매핑되지 않기 때문에, 사용하고자하는 직렬화의 종류를 결정해야합니다 자바 스크립트에서 XML을 얻기 위해 예를 들어,이 자바 스크립트 객체가 있다고 가정 해

    올바른 XML 표현은 무엇입니까?

    <person name="Paul"> 
        <parent>Alice</parent> 
        <parent>Bob</parent> 
    </person> 
    

    아니면?

    <person> 
        <name>Paul</name> 
        <parents> 
        <person name="Alice" /> 
        <person name="Bob" /> 
        </parents> 
    </person> 
    

    사실상 끝이없는 변형이 있으며 최상의 결과에 대한 합의가 없습니다.

    필요한 직렬화를 파악한 후에는 XML을 생성해야합니다. 그것은 not hard to do이지만 뭔가를 찾고 있다면 프로젝트에 그냥 들여 놓을 수 있습니다. 아마도 당신이 지정하지 않았기 때문에 당신의 필요에 맞는 것을 찾아야 할 것입니다. 시작하려면 here's a previous discussion on that topic.

    +0

    감사합니다. 저는 여전히 첫 번째 부분에 조금 갇혀 있습니다. $ .getJson이 객체를 생성하기 때문에 객체에 JSON 데이터를 추가하고 사용자 입력을 포함하는 방법을 보여주는 몇 가지 샘플 코드를 제공 할 수 있습니까? 위의 코드는 사용자에게 표시하기 위해 인쇄하는 것입니다. – MG1

    +1

    마크 업이 어떻게 보이고 JSON이 어떻게 생겼는지에 따라 달라집니다. 그러나 JavaScript 객체 작업에 대해서는 [여기 좋은 기사가 있습니다] (https://developer.mozilla.org/en/JavaScript/Guide/Working_with_Objects). –