我需要将txtRemarks和txtCost文本框值转换为Button OnClick方法上的两个参数。这样我就可以将这些参数传递给控制器中的方法。让我进一步解释一下。我有两个在模型外部创建的文本框。下面我提到了它们。
@Html.Editor("txtRemarks", new { htmlAttributes = new { @class = "form-control date-picker", @placeholder = "N/A" } })
@Html.Editor("txtCost", new { htmlAttributes = new { @class = "form-control date-picker", @type = "number", @placeholder = "0.00" } })
我需要将它们的值设置为Button Onclick事件中的两个参数。下面是单击事件和按钮。我需要将这些参数值添加到控制器 ServiceHeaders
中的ActionResult方法 ServiceDetails 中<input type="button" id="btnAddtoGrid" value="Add" class="btn btn-group" onclick="location.href='@Url.Action("ServiceDetails", "ServiceHeaders")?Remark='+ $('#txtRemarks').val(),?Cost='+ $('#txtCost').val()" />
所有我需要的方法是连接?Remark='+ $('#txtRemarks').val()
和?Cost='+ $('#txtCost').val()
。我可以使用?Remark='+ $('#txtRemarks').val()
或?Cost='+ $('#txtCost').val()
传递一个参数。但是我不知道如何同时获得两者。这是我需要您宝贵帮助的地方。
答案 0 :(得分:1)
您可以链接以下参数:
localhost?Remark='+ $('#txtRemarks').val() + '&Cost='+ $('#txtCost').val()
。
在执行HTTP GET时,您可以使用...?var1=test1&var2=test2&var3=test3
等设置参数
有关更多信息,请参见doc。
注意:对于您的案例,您也可以考虑使用HTTP POST。
答案 1 :(得分:1)
链接建立不正确。要串联参数,必须使用&
。试试这个
<input type="button" id="btnAddtoGrid" value="Add" class="btn btn-group" onclick="location.href='@Url.Action("ServiceDetails", "ServiceHeaders")?Remark='+ $('#txtRemarks').val() + '&Cost='+ $('#txtCost').val()" />
答案 2 :(得分:1)
1)从按钮中删除onClick()。
2)为按钮单击添加ajax调用,如下所示
$('#btnAddtoGrid').click(function () {
$.ajax({
url: '<%= Url.Action("ActionName", "ControllerName", new{Remark = ' +
$('#txtRemarks').val() + ', Cost = ' + $('#txtCost').val()+'}) %>',
success: function (
alert(data);
}
});
});
答案 3 :(得分:0)
客户端。
$('#btnAddtoGrid').on("click",function () {
$.ajax({
type: "POST",
url: "/Home/AjaxMethod",
data: '{newremark : "' + $('#txtRemarks').val() + '" , cost: "' + $('#txtCost').val() + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
alert("Hello: " + response.Name + " .\nCurrent Date and Time: " + response.DateTime);
},
failure: function (response) {
alert(response.responseText);
},
error: function (response) {
alert(response.responseText);
}
});
});
服务器端。
[HttpPost]
public JsonResult AjaxMethod(string newremark,string cost)
{
return Json(newremark);
}