嘿,我正在製作一個簡單的web表單,將其作爲產品詳細信息插入網頁。我試圖插入使用ajax調用。沒有ajax它的作品..但$ .ajax沒有調用我的代碼後面的靜態方法,不知道wat是問題。下面的代碼:在asp.net中調用使用ajax代碼的方法
$(document).ready(function() {
$("#submit").click(function() {
var cat = document.getElementById('DropDownList1').value;
var nm = document.getElementById('name').value;
var cde = document.getElementById('code').value;
var dt = document.getElementById('dt').value;
var price = document.getElementById('price').value;
var f3 = document.getElementById('ty').innerHTML;
alert("you clicked " + cat + " - " + nm + "-" + cde + "-" + dt +
"-" + price + "-" + f3 + "-");
//////////////uptil here alert gives the right value.
$.ajax({
method: "POST",
contentType: "application/json",
url: "home.aspx/ins",
dataType: "json",
data: "{'Name :' + nm + 'code :' + cde +'category :'+ cat +
'date :'+ dt +'price :'+ pr +'img_name :' + f3}",
//data:"{}",
//async: false,
success: function (response) {
alert("User has been added successfully.");
window.location.reload();
}
});
})
});
//////////////////////////////// here is the code behind method:
[System.Web.Services.WebMethod]
public static void ins(string Name,string code,string category, DateTime date,
int price,string img_name)
{
productclass pc = new productclass();
pc.Pr_name = Name;
pc.Code = code;
pc.Category = category;
pc.Expiry = date;
pc.Price = price;
pc.Pr_image = img_name;
dalinsert di = new dalinsert();
bool flag = di.insert(pc);
}
可能是您的數據輸入問題。嘗試將您的輸入構建爲javascript對象,然後將其轉換爲帶有JSON.stringify(變量)的字符串,以便安全和減少對您的工作。看起來更接近我認爲是你的問題。你試圖在一個字符串內連接。在做+之前,你沒有終止你的「」。無論如何,JSON.stringify()通常更清晰。 – Taplar
oka會嘗試它...但輸入工作正常,因爲我已經獲得警報值。 oka thanks – Kam
您的提醒可以正常工作,因爲您在那裏正確連接(「某事」+「其他」)。但在你的數據中你正在做。 「'東西'+變量+'別的東西'」。字符串包圍有「」,而不是「」在這種情況下,它必須是(「'某事'」+「'別的'」)。因此,基本上就像現在在數據部分中那樣,+被視爲文字而不是操作符。 – Taplar