C# 在ASP.NET MVC中,当dropdownlist的选定项发生更改时,如何从数据库中填充文本框
我不熟悉MVC和Javascript。我正在尝试为管理员更改用户信息页面。我有一个下拉列表,其中列出了注册用户和一些文本框,用于输入有关用户的各种信息,如姓名。我的目标是在使用dropdownlist选择用户时,用用户当前信息自动填充文本框。但由于MVC不是事件驱动的,也没有回发功能,所以我不知道如何实现这一点。我想我必须通过dropdownlist的onchange触发一个控制器方法,我认为唯一的方法是使用JS、AJAX或类似的东西 注意:我可以在Controller中完成所有数据库工作 到目前为止,我认为有以下代码:C# 在ASP.NET MVC中,当dropdownlist的选定项发生更改时,如何从数据库中填充文本框,c#,asp.net-mvc,C#,Asp.net Mvc,我不熟悉MVC和Javascript。我正在尝试为管理员更改用户信息页面。我有一个下拉列表,其中列出了注册用户和一些文本框,用于输入有关用户的各种信息,如姓名。我的目标是在使用dropdownlist选择用户时,用用户当前信息自动填充文本框。但由于MVC不是事件驱动的,也没有回发功能,所以我不知道如何实现这一点。我想我必须通过dropdownlist的onchange触发一个控制器方法,我认为唯一的方法是使用JS、AJAX或类似的东西 注意:我可以在Controller中完成所有数据库工作 到目
.... @Html.DropDownList("Users", ViewBag.Users as SelectList, "Select a User", new { id="UserId", onchange="userChanged()"} ) ....
.... <script type="text/javascript">
function userChanged() {
}
</script> ....
希望这对你有帮助
希望这对您有所帮助。:
:
您可以将控制器操作方法定义为JsonResult,并使用AJAX从jquery调用它。 一旦您使用AJAX获得数据,就可以对其进行解析并用该数据填充适当的文本框。 关于如何在userChanged方法中调用ajax,您可以使用以下代码:
$.ajax ({
url: '/Controller/Action',
type: 'GET',
async: true,
cache: false,
data: { userId: useridofwhichdatatobefetched},
success: function (result) {
$("#usernametextbox").val = result.userName; }
});
您可以将控制器操作方法定义为JsonResult,并使用AJAX从jquery调用它。 一旦您使用AJAX获得数据,就可以对其进行解析并用该数据填充适当的文本框。 关于如何在userChanged方法中调用ajax,您可以使用以下代码:
$.ajax ({
url: '/Controller/Action',
type: 'GET',
async: true,
cache: false,
data: { userId: useridofwhichdatatobefetched},
success: function (result) {
$("#usernametextbox").val = result.userName; }
});
非常感谢你。其他回复也对我有所帮助,但通过您的回复,我还了解了所需的JsonResult操作。我做到了。再次感谢,非常感谢。其他回复也对我有所帮助,但通过您的回复,我还了解了所需的JsonResult操作。我做到了。再次感谢。
$.ajax ({
url: '/Controller/Action',
type: 'GET',
async: true,
cache: false,
data: { userId: useridofwhichdatatobefetched},
success: function (result) {
$("#usernametextbox").val = result.userName; }
});