私はこれを持っています:
@Html.DropDownList("centres", (List<SelectListItem>)ViewData["centres"])
そして、プログラムの実行中に JQuery を使用して、SQL でデータベースに入力されたデータで更新する必要があります。
jQuery(function ($) {
jQuery("body").on('click', "#create", function () {
$.getJSON("/Centres/updateList", function (results1) {
// perform update here using results1 from jsonresult updateList in Controller class
});
});
});
results1 は、MVC コントローラー クラスの List です。これらの新しい結果で既存の html ドロップダウンリストを編集できるようにしたいと思います。現在、selectListItems のリストが表示されますが、コントローラ クラスの updateList では、作成したばかりの新しいセンターに基づいて、新しいリストを作成しています。私の Controller クラスメソッドは次のようになります。
public JsonResult updateList()
{
List<SelectListItem> centres = new List<SelectListItem>();
SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Michael\Documents\Visual Studio 2012\Projects\OneEightyWebApp\OneEightyWebApp\App_Data\OneHoldings.mdf;Integrated Security=True");
SqlCommand cmd = new SqlCommand("SELECT Centre.Centre_Name, Count(Shop_No) AS Shop_Count FROM Centre LEFT JOIN Space ON Centre.Centre_Name = Space.Centre_Name GROUP BY Centre.Centre_Name;", conn);
DataTable dt = new DataTable();
SqlDataAdapter da = new SqlDataAdapter(cmd);
conn.Open();
da.Fill(dt);
conn.Close();
for (int i = 0; i < dt.Rows.Count; i++)
{
centres.Add(new SelectListItem { Text = dt.Rows[i].ItemArray.GetValue(0).ToString(), Value = dt.Rows[i].ItemArray.GetValue(1).ToString() });
}
return Json(centres, JsonRequestBehavior.AllowGet);
}
何か案は?