我所有的应用程序..管理员将Projetcs分配给员工 所以我的屏幕看起来像这样 我有三个名为[Projects],[Employees],[AssignedWork]的Db表。我正在做的是我将所有项目绑定到DropDwon并将所有Employees名称绑定到CheckBox动态 这就是我在做的事情
<div ><a >Project Name : </a><%:Html.DropDownList("Projects")%></div>
<div class="scrool_main" >
<% foreach (var item in Model)
{ %>
<br />
<%:Html.CheckBox("EmployeId", new { value = item.EmployeeID, @class = "employeeCheckBox" })%>
<%:Html.LabelForModel(item.EmployeeName)%>
<%} %>
</div>
<% if (TempData["notice"] != null) { %>
<p><label id="msgtext" >Inserted Successfully !!!!</label></p>
<% } %>
</div>
这就是我在下拉更改时调用控制器方法的方法
<script type="text/javascript">
$(document).ready(function () {
$("#Projects").change(function () {
alert(1);
var project = document.getElementById("Projects");
var SelProj = project.options[project.selectedIndex].value;
alert(SelProj);
if (SelProj != "") {
alert("hi");
var PorjectId;
$.ajax({
type: "POST",
url: '<%= Url.Action("GetAssignedWork","Project") %>',
enctype: 'multipart/form-data',
data: {ProjectId:SelProj}
})
}
});
});
</script>
这是我的控制器动作
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult GetAssignedWork(string ProjectId)
{
ViewBag.Projects = new SelectList(GetProjects(), "ProjectId", "ProjectName");
var EmployeeList = new List<ResourceModel>();
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
SqlCommand dCmd = new SqlCommand("select EmployeID from AssignedWork where ProjectID='" + ProjectId + "'", conn);
SqlDataAdapter da = new SqlDataAdapter(dCmd);
DataSet ds = new DataSet();
da.Fill(ds);
conn.Close();
for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
{
//need help here for getting the checkbox checked
}
return View("AssignWork",EmployeeList);
}
}
所以我想要的是,如果管理员从所选索引的下拉列表中选择项目,则应检查先前已分配给该项目的员工.i表示应该检查已分配给项目的员工...所以如何我应该这样做吗
答案 0 :(得分:0)
用于空白和“启动”版本的Visual Studio模板 MVC提供了一个包含jQuery的Scripts目录。 - Reference
包括它 -
<script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
$(function(){
$('#Projects').change(function(){
var isChecked = $('#EmployeId').is(':checked');
});
});