Javascript 从@Html.DropdownListfor中选择值时如何填充@Html.Textboxfor
在ASP.NET MVC5应用程序中选择@Html.DropdownListfor中的值时,如何将数据填充到@Html.Textboxfor中。使用脚本或其他方法填充文本框中的数据,哪种方法更好?如果可以,请给我一个例子。我就是这样做的。使用JavaScript。您应该创建一个脚本,其中所有ajax调用都来自一个入口点。它更易于重用、维护和调试。请记住,这段代码只是一个大纲,您必须将其清理干净。不要按建议点击服务器,并在每次下拉列表值更改时更新视图模型。这太荒谬了。我会告诉你我对这种情况的全部看法。只要从一个Javascript 从@Html.DropdownListfor中选择值时如何填充@Html.Textboxfor,javascript,html,ajax,asp.net-mvc-5,Javascript,Html,Ajax,Asp.net Mvc 5,在ASP.NET MVC5应用程序中选择@Html.DropdownListfor中的值时,如何将数据填充到@Html.Textboxfor中。使用脚本或其他方法填充文本框中的数据,哪种方法更好?如果可以,请给我一个例子。我就是这样做的。使用JavaScript。您应该创建一个脚本,其中所有ajax调用都来自一个入口点。它更易于重用、维护和调试。请记住,这段代码只是一个大纲,您必须将其清理干净。不要按建议点击服务器,并在每次下拉列表值更改时更新视图模型。这太荒谬了。我会告诉你我对这种情况的全部看
XMLHttpRequest
视图模型中拉入您喜欢的视图模型,并在每次下拉列表更改时过滤您拥有的当前数据
步骤1:向控制器请求视图模型
//quick example
var xhr = new XMLHttpRequest();
xhr.open('GET', 'Controller/Methodname');
xhr.send(null);
步骤2:获取ViewModel并将其存储在所需的对象、变量或w/e中
//handle the call
xhr.onreadystatechange = function () {
var DONE = 4; // readyState 4 means the request is done.
var OK = 200; // status 200 is a successful return.
if (xhr.readyState === DONE) {
if (xhr.status === OK)
...xhr.responseText // 'This is the returned text. so store it somewhere'
} else {
console.log('Error: ' + xhr.status); // An error occurred during the request.
}
}
};
步骤3:为下拉列表添加onChange事件
onDropdownChange() {
// based on what is selected, filter you data and populate the textbox
document.getElementById("YourTextboxID").value = your value;
}
试试这样的
function ondropdownchange(){
$.get("yourmethodurl", function(data, status){
$('#yourtextbox').val(data);
});
}
@user3608792你想让他在每次有人更改下拉列表值时点击服务器吗?当我们在下拉列表中选择值时,我有权通过DB将值输入文本框。我可以编写javascript(与上面的示例不同)并在MVC5中执行它吗。如果可能的话,建议我solution@addadaSatish在MVC5中执行它是什么意思?MVC是一种设计模式。请解释一下你的意思。对不起,我想我错把它删除了。你根本没有回答他的问题`用脚本或其他方法在文本框中填充数据,哪种方法更好?如果可以,请给我一个例子`