2016-08-03 84 views
0

jqGridのドロップダウンリストの使用に関する質問があります。私の環境では、MVC 5でライセンスjqGrid 4.4.4 - jQuery Grid(バージョン4.4.4)を使用しています。動的列とjqGridのドロップダウンリストを使用

私のコードでは、私のコントローラからとColModelを動的に作成します。列がドロップダウンの値を表示したいのを除いて、すべてが機能しています。今、ドロップダウンリストは空です。なぜそれは空ですか?

また、どのように値を設定する必要がありますか? {value:{'FE':'FedEx';'IN':'InTime';'TN':'TNT';'AR':'ARAMEX'}}は、コントローラ内のメソッドから動的にロードできますか?ここで

model.CreateMeeting = false; 
SecondOpinionFacade = new SecondOpinionFacade(); 
var meeting = SecondOpinionFacade.GetMeeting(id); 
model.MeetingDay = meeting.StartDate.Date; 
model.MeetingdID = meeting.SecondOpinionMeetingId; 
model.FromTime = meeting.StartDate.ToString("HH:mm"); 
model.ToTime = meeting.EndDate.ToString("HH:mm"); 
model.NrofGroups = meeting.SecondOpinionGroup.Count; 

var list = new[] { new { name = "SecondOpionUserId", index = "SecondOpionUserId", sorttype = "string", sortable=false, hidden = true, editable = true, edittype = "", editoptions= "", formatter = ""} }.ToList(); 

ドロップダウンが空に表示されているように、私は、ドロップダウンリストにデータを入れしようとしていますが、動作するようには思えません。あなたがeditoptionの値として文字列を使用

list.Add(new { name = "Deltagare", index = "Deltagare", sorttype = "string", sortable = true, hidden = false, editable = true, edittype = "select", editoptions = "{value:{'FE':'FedEx';'IN':'InTime';'TN':'TNT';'AR':'ARAMEX'}}", formatter = "select" }); 
int counter = 1; 
meeting.SecondOpinionGroup.OrderBy(x=> x.SecondOpinionGroupId).ForEach(x => 
{ 
    list.Add(new {name = x.SecondOpinionGroupId.ToString(), index = "Grupp" + counter, sorttype = "string", sortable = false, hidden = false, editable = true, edittype = "checkbox", editoptions = "{ value: 'True:False' }", formatter = "checkbox" }); 
    counter++; 
}); 

var list2 = new[] { "SecondOpionUserId" }.ToList(); 
list2.Add("Deltagare"); 
for (int i = 1; i <=model.NrofGroups; i++) 
{ 
    list2.Add("Grupp"+i); 
} 

model.ColNames = JsonConvert.SerializeObject(list2); 
model.ColModel = JsonConvert.SerializeObject(list); 
return View(model); 

答えて

1

。それは間違っています。 editoptionsの値はオブジェクトである必要があります。ありがとう

editoptions = new { value = "True:False" } 

editoptions = new { value = "FE:FedEx;IN:InTime;TN:TNT;AR:ARAMEX" } 
+0

editoptions = "{ value: 'True:False' }" 

editoptions = "{value:{'FE':'FedEx';'IN':'InTime';'TN':'TNT';'AR':'ARAMEX'}}" 

を交換してみてください!これで問題が解決しました。編集オプションを文字列からオブジェクトに変更したため、小さな問題が発生しました。リスト内の他のすべてのeditoptionsをオブジェクトに設定する必要がありました。そうしないと、コンパイルエラーが発生します。しかし、私はそれらをeditoptions = new {value = ""}に設定しました。 – user3197410

関連する問題