5

キー/値が1つの行でid/valueとして指定されているExtJSストアに属性形式のXMLを読み込むにはどうすればよいですか?私は以下に示す2番目の形式に精通しています。

<?xml version = "1.0" encoding = "UTF-8"?>
<XMLResponse>
    <データ>
        <行>
            <column id = "title" value = "Star Wars" />
            <column id = "director" value = "Lucas" />
            <column id = "year" value = "1977" />
        </ row>
        <行>
            <column id = "title" value = "Jaws" />
            <column id = "director" value = "Spielberg" />
            <column id = "year" value = "1975" />
        </ row>
    </ data>
</ XMLResponse>

XMLを書くためのより伝統的な方法。

<?xml version = "1.0" encoding = "UTF-8"?>
<XMLResponse>
    <データ>
        <行>
            <title>スターウォーズ</title>
            <監督>ルーカス</監督>
            <年>1977</年>
        </ row>
        <行>
            <title>ジョーズ</title>
            <監督>スピルバーグ</監督>
            <年>1975</年>
        </ row>
    </ data>
</ XMLResponse>
4

1 に答える 1

4

十分に文書化されていませんが、フィールドのマッピングは、 Ext.dom.Queryによって受け入れられる任意の式にすることができます。したがって、通常は「title」の単純なマッピングを使用して「title」という名前の子タグを選択する場合は、より複雑なセレクターを含めることができます。この場合、ID属性が探しているフィールド名と一致する「column」タグの「value」属性を選択する必要があるため、モデルまたはストアで、次のようにフィールドを定義できます。

fields: [
    { name: 'title', mapping: 'column[id=title]@value' },
    { name: 'director', mapping: 'column[id=director]@value' },
    { name: 'year', mapping: 'column[id=year]@value' }
],
于 2012-06-20T17:49:46.833 に答える