我有以下ViewResult()
填充模型(持有兩個下拉列表),然後發送到強類型的視圖()。 通知我如何添加一個新的「ALL --- VIEW ---「與標識兩個下拉列表值是一個Guid.Empty.
如何檢查客戶端下拉的Guid.Empty ID
[HttpGet]
public ViewResult ManageUsers()
{
var applicationList = _facade.Value.GetApplications().OrderBy(a => a.Name).ToList();
applicationList.Add(new Application() { Id = Guid.Empty, Name = "---VIEW ALL---" });
var roleList = _facade.Value.GetRoles(applicationList.First().Id).OrderBy(a => a.Name).ToList();
roleList.Add(new Role() { Id = Guid.Empty, Name = "---VIEW ALL---" });
var model = new ManageUsersModel();
model.ApplicationList = new SelectList(applicationList, "Id", "Name", applicationList.First().Id);
model.RoleList = new SelectList(roleList, "Id", "Name");
return View(model);
}
一旦視圖()內我創建一個jquery .change()
事件第一個下拉列表,我希望檢測選定的值。
根據選定的值,我需要採取不同的行動。例如,如果選擇了Guid.Empty
值,那麼做到這一點......如果沒有,那麼到...
到目前爲止,我有在.change()事件中的代碼看起來是這樣的:
$('#ApplicationId').change(function() {
if ($(this).val() === "00000000-0000-0000-0000-000000000000") {
alert("aaa");
}
else {
alert("xxx");
}
});
代碼工作但我發現它醜陋檢查Guid.Empty
我這樣做的方式。
有沒有人有不同的/更好的方法來實現這一目標?
在此先感謝!
真誠 Vlince
PS:由於這是一個多語言的應用程序,我無法使用下拉式的selected text
爲IF(...)進行比較。
不幸的是,Model.ApplicationList和Model.RoleList不作爲類型列表<>也IEnumerable的。它們被輸入爲SelectList。也許我需要改變兩種屬性的類型,以實現你所展示的內容。我會去改變。我喜歡你的答案,簡單而聰明!謝謝。 – Vlince 2013-04-11 16:01:14