我必須從Java腳本調用一個C#函數。爲此,我使用ajax後調用C#函數的請求。但我的C#函數實際上並沒有從ajax腳本調用。我不知道什麼是不是調用C#函數的原因?ajax後不能正常工作與C#
這是我的Ajax代碼:
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
$(function() {
$("#btnSend").click(function() {
var image = document.getElementById("myCanvas").toDataURL("image/png");
image = image.replace('data:image/png;base64,', '');
$.ajax({
type: 'POST',
url: 'Default.aspx/UploadImage',
data: '{ "imageData" : "' + image + '" }',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
alert('Image sent!');
}
});
});
});
</script>
這是我的C#功能:
namespace sample
{
[ScriptService]
public partial class _Default : System.Web.UI.Page
{
[WebMethod()]
public static void UploadImage(string imageData)
{
FileStream fs = new FileStream("D:\\vs-2010projects\\delete_sample\\delete_sample\\myimages\\image.png", FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
byte[] data = Convert.FromBase64String(imageData);
bw.Write(data);
bw.Close();
}
}
}
Web控制檯說什麼? –
Web控制檯(Chrome)表示POST http://localhost/delete_sample/Default.aspx/UploadImage 500(內部服務器錯誤)jquery-1.6.1.min.js:18 發送jquery-1.6.1.min.js :18 f.extend.ajax jquery-1.6.1.min.js:18 (匿名函數)Default.aspx:25 f.event.handle jquery-1.6.1.min.js:17 i.handle .k jquery-1.6.1.min.js:16 – Saravanan
好吧,你去了,看起來功能有些問題。你調試了,是否設置了斷點? –