【发布时间】:2013-12-18 09:21:09
【问题描述】:
您好,我在这里需要做的是,当下拉列表的选择发生变化时,我想使用 AJAX 调用一个动作并传递一些数据。您可以在下面找到我正在使用的代码。我进行了很多搜索,但不明白为什么它没有进入操作。数据和网址是正确的。控制器名称为 HomeController,动作名称为 getData。
<script type="text/javascript">
function submitform() {
var a = document.getElementById("tournaments");
var datad = a.options[a.selectedIndex].value;
var url = '/Home/getData';
var completeurl = window.location.host + url;
alert(completeurl);
$.ajax({
type: "GET",
url: completeurl,
data: {tournamentid : datad},
datatype: 'JSON',
success: function (data) { alert('got here with data'); },
error: function () { alert('something bad happened'); }
});
};
</script>
Dropdownlist:
<%: @Html.DropDownList("tournaments", null, new { name = "tournaments", title = "Please Select Tournament.", onchange = "submitform();",id = "tournaments"}) %>
Action:
[HttpGet]
public ActionResult getData(int? tournamentid)
{
//perform your action here
UserBl us = new UserBl();
int num = Convert.ToInt32(tournamentid);
Tournament tour = us.GetTournamentById(num);
return Json(tour, JsonRequestBehavior.AllowGet);
}
【问题讨论】:
标签: javascript jquery ajax asp.net-mvc-4 onchange