MVC アプリで dForm を使用したい。次のjson文字列からフォームを構築しようとすると、問題ありません。
var formdata = {
'action': 'index.html',
'method': 'get',
'elements':
[
{
"type":"select",
"name":"Name",
"caption":"Name",
"options":"first":{"html":"first","class":"active"},
"second":{"html":"second","class":"active"},
"selected":null
}
]
};
しかし、次のような要素に生成された部分を使用すると:
var elements = {
"action": "index.html",
"method": "get",
"elements":
[
$('#jqgrid').jqGrid('getGridParam', 'userData')
]
};
$('#myform').buildForm(elements);
dform から次のエラーが表示されます。
uncaught exception: No element type given! Must always exist.
しかし、「要素」タグは最初の例で投稿したものと同じだと確信しています。
firebug では、取得した jqGrid の文字列 userData を次の形式で見ることができることがわかりました。
"userdata":"{\"type\":\"select\",\"name\":\"Name\",\"caption\":\"Name\",\"options\":{\"first\":\"first\" .....
JObject から userData を生成します。問題があるのかもしれません。エスケープ文字「\」を置き換えようとしましたが、成功しませんでした。