0
我有一個用戶從其下訂單的視圖(MVC3)。視圖綁定到我用來顯示模型項目的模型。這個觀點有兩個功能。首先輸入客戶詳細信息,然後選擇用戶訂購的項目。這是使用另建模型的代碼i'm被髮送回服務器端:錯誤地使用AJAX?
var modelItems = {
ModelID: [],
Amount: []
};
var serviceModel = {
Name: $.trim($('#name').val()),
Customernumber: $.trim($('#customernumber').val()),
Address1: $.trim($('#address1').val()),
Address2: $.trim($('#address2').val()),
Zipcode: $.trim($('#zipcode').val()),
City: $.trim($('#city').val()),
Country: $.trim($('#country').val()),
Phone: $.trim($('#phone').val()),
Mobile: $.trim($('#mobile').val()),
Email: $.trim($('#email').val())
};
$('div.modelSpan').each(function (i) {
var textBox = $(this).children();
var value = $(textBox).val();
if (value != '0' && value != '') {
var modelID = $(textBox).attr('name');
modelItems.ModelID.push(modelID);
modelItems.Amount.push(value);
}
});
var accessory = {
ModelItems: modelItems,
ServiceModel: serviceModel
};
$.ajax({
url: '/Site/Order', //Renamed sec reasons
type: "POST",
data: JSON.stringify(accessory),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (ordernumber) {
window.location.href = "/Site/OrderInfo/" + businessAB + "/" + ordernumber;
},
error: function() {
alert('error');
}
});
在MVC3很酷的事情是,我的附件自動綁定到我的模型在服務器端稱爲AccessoriesModel。關於回調成功,我將新的href設置爲收據網站,以向用戶顯示已創建的內容。這一切都工作,但我的問題是,我希望收到視圖(OrderInfo)從我的控制器返回[httppost],而不是設置新的href返回。有沒有辦法做到這一點?使用常規表單提交時,這很容易,但由於我的模型的值不是來自一種形式,而是使事情複雜化。也許我不應該使用AJAX?
怎麼樣生成部分視圖並使用ajax從控制器中返回? – cpoDesign 2012-03-23 08:25:17
如果我使用部分視圖不會只是加載在同一頁上的ajax文章發送? – user228720 2012-03-23 08:35:47
只需隱藏包含div的部分視圖,然後ajax成功顯示部分和隱藏其餘內容 – user228720 2012-03-23 09:56:55