WebFormsでSelectListのAJAXデータをフォーマットするにはどうすればよいですか?

私はAJAX呼び出しから戻ってきたSelectList w/dataを設定しています。しかし、データは短い名前で数十のアイテムではなく、本当に長い名前で1つのアイテムとして表示されています。私は "ABC"、 "DEF"、 "GHI"などの代わりに "ABC DEF GHI JKL MNO"を取得しています。そのため、SelectListはロングネーム付きのアイテムを1つだけ取得します。

返されたデータをデバッガで表示すると、短い値が必要に応じて別々の行に表示されます。

私は戻り値の型として "json"の代わりに "html"を使用しようとしましたが、それは効果がありませんでした。

ここに私のサーバーサイドコードがあります:

private void GetItems(HttpContext context, int myID) 
{
    DataTable datatable = GetMyItems(myID);

    foreach (DataRow myRow in datatable.Rows)
    {
        Response.Write(myRow["ColumnName"].ToString() + Environment.NewLine);
    }
    Response.End();
}

そしてjavascript ...

$.ajax({
    url: "../myAjaxPage.aspx?myID=" + myID,
    type: 'POST',
    datatype: 'json',

    success: function (data) {
        $("
0
JSONまたはHTMLを GetItems から実際に返すわけではありません。 data は1つの長い文字列であり、その1つの長い文字列では、その長い文字列をその値として持つ
追加された 著者 millimoose,

2 答え

あなたはJSONを返さず、ただ文字列を返すだけです。しかし、それは大丈夫です。文字列を分割し、結果の配列を反復するだけです。

success: function (data) {
    $.each (data.split("\n"), function() {
        $("
2
追加された

文字列ではなく配列としてオブジェクトを返すことはできますか?私は改行がAjaxで無視されていると思う。配列オブジェクトに格納されている場合は、 $(each)(data)を実行することができます。

1
追加された
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript