ASP.NET MVC3.0 DropDownList的二级联动问题,都是从数据库读取的,全部都写好了,但是没有出现联动效果? 50

cshtml部分代码:<divclass="editor-label">@Html.Label("房间类型:")@Html.DropDownList("TypeID",V... cshtml部分代码:

<div class="editor-label">
@Html.Label("房间类型: ")
@Html.DropDownList("TypeID", ViewBag.Types as IEnumerable<SelectListItem>, "--请选择--")
@Html.Label("房间号: ")
@Html.DropDownList("RoomID", ViewBag.Rooms as IEnumerable<SelectListItem>, "--请选择--")
</div>

js代码:

<script type="text/javascript">// <![CDATA[
$(document).ready(function () {
$("#TypeID").change(function () {
var url = "/Guest/GetRoomNumber/" + $("#TypeID").val() + "/"; //规则是控制器/方法/参数
$.getJSON(url, function (data) {
$('#RoomID').html('');
$.each(data, function (i, item) {
$('#RoomID').append($("<option></option>").val(item.RoomID).html(item.Number));
});
});
});
});// ]]>
</script>

Controller的代码:
public class GuestController : Controller
{
HotelManageEntities db = new HotelManageEntities();
public ActionResult Create()
{
ViewBag.Types = db.RoomType.ToList().Select(c => new SelectListItem { Value = c.TypeID.ToString(), Text = c.TypeName });
ViewBag.Rooms = db.Room.ToList().Select(c => new SelectListItem { Value = c.RoomID.ToString(), Text = c.Number });
}

public JsonResult GetRoomNumber(int id)
{
HotelManageEntities context = new Models.HotelManageEntities();

var RoomNumber = from a in context.Room where a.TypeID == id select a;
return Json(RoomNumber.ToList(), JsonRequestBehavior.AllowGet);
}
}
展开
 我来答
泉秀沅0f2
2012-06-06 · 超过10用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:31.4万
展开全部
二级联动,细心点不难
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
depluin
2012-05-31 · TA获得超过3179个赞
知道大有可为答主
回答量:3378
采纳率:75%
帮助的人:2475万
展开全部
你检查一下是不是js没有触发?
追问
怎么检查呢?教一下
追答
在js里面写alert,看出触发了没有,或者用vs/ie加断点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
万事俱备就差一个程序员了
2012-05-31 · TA获得超过225个赞
知道小有建树答主
回答量:659
采纳率:0%
帮助的人:295万
展开全部
用js写啊 ajax
追问
能示范一下怎么写吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式