Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ASP.NET MVC中,当dropdownlist的选定项发生更改时,如何从数据库中填充文本框_C#_Asp.net Mvc - Fatal编程技术网

C# 在ASP.NET MVC中,当dropdownlist的选定项发生更改时,如何从数据库中填充文本框

C# 在ASP.NET MVC中,当dropdownlist的选定项发生更改时,如何从数据库中填充文本框,c#,asp.net-mvc,C#,Asp.net Mvc,我不熟悉MVC和Javascript。我正在尝试为管理员更改用户信息页面。我有一个下拉列表,其中列出了注册用户和一些文本框,用于输入有关用户的各种信息,如姓名。我的目标是在使用dropdownlist选择用户时,用用户当前信息自动填充文本框。但由于MVC不是事件驱动的,也没有回发功能,所以我不知道如何实现这一点。我想我必须通过dropdownlist的onchange触发一个控制器方法,我认为唯一的方法是使用JS、AJAX或类似的东西 注意:我可以在Controller中完成所有数据库工作 到目

我不熟悉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; }
});