我正在尝试更新部分view.in中的文本框值,该部分视图已经有一个字段,即已经绑定的一个输入框。我想通过ajax方法更新另一个输入框,而不干扰已经绑定的其他字段。局部视图
@model Smart_Mis_CRCW.Models.Ipcell
<div>
<div>Case Id <input id="Rcid" type="text" style="margin-left:11%" value="@Model.CaseId"/></div><br />
<div>Vendor No<input id="Rvno" type="text" style="margin-left:11%"/><input id="Rval" value="Validate" type="button" style="margin-left:2%" /></div><br />
<div>Vendor Name<input id="Rvname" type="text" style="margin-left:11%" value="@Model.VendorName"/></div></div>点击验证按钮,它将验证数据库中的值,并将文本框中的值与id Rvname绑定。
ajax视图尝试这样做
$(document).on("click", "#Rval", function (e) {
var vno=$('#Rvno').val();
$.ajax({
type:"POST",
url:"/Home/Vendorno",
data:{ 'id' : vno},
//contentType:"application/json; charset=utf-8",
datatype:"json",
success:function(r){
alert(r + " record(s) inserted.Case ID");
}
});
});如何传递控制器Vendorno中的值,以便它将使用id Rvname更新textbox中的值。任何想法都将不胜感激。
发布于 2020-09-07 05:40:51
如何在控制器Vendorno中传递值
你可以将值传递给你的controller,因为你已经在传递了,试验和错误总是存在的,因为有时contenttype实际上不是你用来命中controller的,或者数据的格式不正确,这就是为什么没有相应地映射这些值。
如果您只将id传递给控制器端点,那么我建议您使用application/x-www-form-urlencoded,如下所示:
$(document).on("click", "#Rval", function (e) {
var vno=$('#Rvno').val();
$.ajax({
"type" : "POST",
"url" : "/Home/Vendorno?id=" + vno,
"data" : null,
"contentType" : "application/x-www-form-urlencoded"
"success" : function(r){
alert(r + " record(s) inserted.Case ID");
}
});
});,以便它将使用id Rvname更新textbox中的值
您的控制器不负责更新前端的任何内容,因此您必须在success方法上进行更新,从控制器返回所需的值,并在您选择的文本框中设置该值。i.e
$(document).on("click", "#Rval", function (e) {
var vno=$('#Rvno').val();
$.ajax({
"type" : "POST",
"url" : "/Home/Vendorno?id=" + vno,
"data" : null,
"contentType" : "application/x-www-form-urlencoded"
"success" : function(r){
$('#Rvname').val(r); // I assume the "r" in the param is the name being returned from the controller.
}
});
});https://stackoverflow.com/questions/63766433
复制相似问题