0
我們遇到這樣的情況,我們想控制器到達第一個參數爲JSON(模型)作爲第二個參數模型比其他一些額外的數據串(例如標誌,從何處驅動事件的源代碼控制等),我們嘗試使用jQuery進行調整,但所有結果都顯示在瀏覽器檢查元素中。Asp.net MVC:控制器,第一個參數爲JSON和第二個參數從查看
通常我們有我們的控制器是這樣的:
public async Task<ActionResult> Foo(Bar b, string additionaldata)
{
if (additionaldata="Deleted")
{
}
else if (additionaldata="Favorite")
{
}
}
而且裏面查看它是這樣的:
$("#delete").click(function() {
$.ajax({
url: "/Index/Foo",
type: "POST",
data: $("#myform").serialize(),
dataType: "json"
}).done(function (model) {
$("#Foo_Id").val(model.Foo.Id);
});
});
至於模型而言,這個jQuery是工作正常,但遠當我們嘗試添加一些額外的參數時,我們無能爲力。
請建議我們如何通過它。
它的工作就像一個魅力,只是想知道它是如何成爲我們增加了在JSON選項第二個參數。我們認爲它會在模型本身中添加一些字符串。 – jaykhatri
不太確定你的問題。 append()方法只是爲要發佈的數據添加名稱/值對,在這種情況下爲additionaldata ='Favorite''。因爲你有一個匹配的參數('string additionaldata'),它將被綁定。你也可以用你的原始代碼手工做,但是'data:$(「#myform」)。serialize()+'&additionaldata = Favorite','但它可能會有點混亂。 –
這正是我所問的,這意味着它是控制器操作的能力,它智能地從json字符串中提取參數? – jaykhatri