嗨我有这样的方法:
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult GetPayeesJson(long id)
{
///TODO:
}
现在它正在从这样的Javascript函数中调用并运行良好:
$.post("/Payee/GetPayeesJson/" + payerData.Id, null, function (data) {
fillPayeeCache(data, payerData.Id);
fillPayeeSelect(payeeCache[payerData.Id]);
}, "json");
除了传递给方法GetPayeesJson(long id)
的id之外,我还想传递一个包含表单名称的字符串。所以基本上我想对这样的方法进行调用:
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult GetPayeesJson(long id, string formName)
{
//TODO:
}
我怎么做到这一点。提前谢谢!
答案 0 :(得分:1)
示例:请求test.php页面并发送一些其他数据(同时仍然忽略返回结果)。
$.post("test.php", { name: "John", time: "2pm" } );
答案 1 :(得分:0)
将formName作为查询字符串变量添加到$ .post调用中的url可能最简单。 (即将“?formName = whatever”添加到您的URL)您也可以将其作为名为formName的表单变量发布。
此行为是可覆盖的,但默认情况下,您可以使用适当命名的查询字符串或表单变量。
e:offtopic但你也应该能够在GetPayeesJson方法中使用[HttpPost]作为属性的缩写形式。
"/Payee/GetPayeesJson/" + payerData.Id + "?formName=whateverYourFormIsNamed"
以表格形式添加 - >看看Toast的回复
这些将允许您使用您指定的控制器操作的语法。
答案 2 :(得分:0)
这个怎么样?
$.ajax({
url: 'example.php',
dataType: 'json',
type: 'POST',
data: {
formName: 'formName'
},
success: function (response) {
},
error: function(response, data) {
alert("Oops... Looks like we're having some difficulties.");
}
});
答案 3 :(得分:0)
您需要将该信息作为提交的data
所以对于你的具体例子
$.post("/Payee/GetPayeesJson/" + payerData.Id,
{'formName':'value to be passed here'},
function (data) {
fillPayeeCache(data, payerData.Id);
fillPayeeSelect(payeeCache[payerData.Id]);
}, "json");
应该做你需要的......