我想在下拉值更改时更改“文本框”和“图像”的值。当前,我正在使用Json
从数据库中获取相应的值。
我现在被困住了。我不知道如何附加这些值。
控制器
[HttpPost]
public JsonResult UpdateContent(ViewModel model)
{
var Getdata = context.Emp.Where(x => x.Position == model.Position).FirstOrDefault();
model.Title= Getdata.Title;
model.Link= Getdata.Link;
model.FilePath= Getdata.FilePath;
return Json(model, JsonRequestBehavior.AllowGet);
}
脚本
function UpdateContent() {
var formdataEdit = $('#Editform');
var data = formdataEdit.serialize();
console.log(data);
$.ajax({
url: '@Url.Action("UpdateContent", "Home")',
type: 'POST',
data: data,
success: function (data) {
if (data) {
$('#Title').val(data);
$('#Link').val(data);
var filepath = $('#FilePath').val(data);
$('#aImage').attr('src', filepath);
}
else {
var message = data.message;
alert(message);
}
}
});
}
答案 0 :(得分:1)
尝试以下操作:
success: function (data) {
if (data) {
$('#Title').val(data.Title);
$('#Link').val(data.Link);
var filepath = data.FilePath;
$('#aImage').attr('src', filepath);
}
else {
var message = data.message;
alert(message);
}
}
执行ajax调用时,控制器返回的模型由jQuery解析为data参数,并且数据属性名称与模型属性名称相同。