0

私は MVC2 EditStatesController を持っています:

     public JsonResult GetStates()
     {
         string statesToReturn = GetStates();  // returns "1: Alabama; 2: Alaska; 3:  Arizona; 4: Arkansas"
         return Json(statesToReturn);
     }

これは、コントローラーを呼び出すコードです。

//get States
    var listOfStates = $.ajax({
        url:    '/EditStates/GetStates', 
        type: 'POST',
        async: false, 
        success: function(data, result) {
            if (!result) 
                alert('Failure to retrieve States.');
        }
    }).responseText;

ドロップダウンには要素のリストがありますが、最後の要素には余分な " (二重引用符) があるため、最後の州ワイオミングはワイオミングです".

他の質問を検索しましたが、同様の質問は見つかりませんでした。なぜこれが起こっているのか、これを修正する方法を知っていますか? ありがとう、ジェニー

4

1 に答える 1

0

searchoptionsは、現在使用しようとしている代わりにdataUrland オプションで使用できます。buildSelectvalue

jqGrid は、次のような HTML フラグメントを構築する必要があります。

<select>
    <option value="1">Alabama</option>
    <option value="2">Alaska</option>
    <option value="3">Arizona</option>
    <option value="4">Arkansas</option>
</select>

したがって、コントローラーのアクションから直接データを提供するか、JSON 出力などの他の出力を提供することができます。

[
    {"id":1, "name":"Alabama"},
    {"id":2, "name":"Alaska"},
    {"id":3, "name":"Arizona"},
    {"id":4, "name":"Arkansas"}
]

イベント ハンドラーを使用buildSelectして、JSON データを HTML フラグメントに変換します<select>...</select>。詳細については、回答を参照してください。

この方法を選択すると、'"'、':'、';' などの特殊文字を問題なく使用できます。等々。

于 2011-07-13T21:29:25.107 に答える