2016-10-28 1 views
-3
var employee = { 
    55555: { 
    name : { 
     firstName : Jack, 
     lastName : Daniels 
    }, 
    gender : male 
    workExperience : [ 
     { 
      company : Coca-cola, 
      year : 2014 
     }, 
     { 
      company : McKinsey, 
      year : 2020 
     } 
    ] 
    } 
}; 

私はWebアプリケーションで作業しています。ご覧のとおり、私は複雑なJavascriptオブジェクトを持っています。入力フィールドがあり、ボタンをクリックすると、上記のJavascriptオブジェクトを作成してJSONに変換し、Actionクラス(Struts2)に送信します。複雑なjavascriptオブジェクトを作成し、それをActionクラスに渡すにはどうすればよいですか?

私にはいくつか質問があります。私の長い説明に耐えてください。

最初オブジェクトが含ま:

var employee = { 
    55555: { 
    gender : male 
    } 
}; 

(1)55555従業員番号を表し、オブジェクトのキーとして機能します。どのように追加することができます

name : { 
    firstName : Jack, 
    lastName : Daniels 
}, 

既存のキー55555に?

私は

employee[55555][name] = { 
    firstName : Jack, 
    lastName : Daniels 
} 

しかしnameを試してみましたが、エラーが発生した定義されていません。

私も

employee[55555][name] = {}; 

employee[55555][name] = { 
    firstName : Jack, 
    lastName : Daniels 
} 

を試してみました。しかし、私は、既存の

{ 
    gender: male 
} 

が消去されると信じています。

(2)workExperienceのプロパティの場合、私は何をすべきかわかりません。この例で書かれているようにオブジェクトの配列で構成されていると仮定します。

(3)JSONに変換してActionクラスオブジェクトで受信できるようにするにはどうすればよいですか?

ありがとうございました。質問については

+0

を使用してJSON文字列として送信します。デベロッパーコンソールにエラーメッセージ.....が表示されていることを確信しています。ブラウザに組み込まれたデベロッパーツールを使用する方法を学んでください。 – epascarello

答えて

-1

(1)私は

employee[55555].name = { 
    firstName : Jack, 
    lastName : Daniels 
} 

を試してみましたが、期待どおりに動作します。

+0

すべての質問には答えられません –

0
  1. あなたは、変数名ではありませんEmployee[55555]属性への参照を作っている[name]を使用した場合、Employee[55555]['name']またはEmployee[55555].nameを試すことができます。

  2. firstNameと同じです。とcompanyの値は、引用符を使用して文字列にします。

  3. は `[名前]は`変数名を探しているので JSON.stringify(Employee)

関連する問題