【发布时间】:2014-08-12 01:55:31
【问题描述】:
<html>
<script src="json.js";/>
<script src = "jquery.js"/>
<script type="text/javascript">
function PopulateBlendSpecification() {
var data = new Object();
data.Message = "message";
alert(JSON.stringify(data));
$.ajax({
url: "Test.aspx/Test",
type: "POST",
contentType: "application/json;charset=utf-8",
dataType: "json",
data: JSON.stringify(data),
success: function (result) {
var listItems = [];
var blendSpecItems = JSON.parse(result.d);
for (var key in blendSpecItems) {
listItems.push('<option value="' + blendSpecItems[key].BlendSpecID + '">' + blendSpecItems[key].BlendName
+ '</option>');
}
var lBox = $('select[id$=lbBlendSpecs]');
$(lBox).append(listItems.join(''));
}
})
}
Test.aspx.cs
[WebMethod()]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static string Test(string message)
{
return message;
}
当我在一个项目中尝试此操作时,效果很好。 但是,当我将 webmethod 移动到同一解决方案中的单独项目中时,我得到一个 ajax 错误:
Error in: http://localhost/Test/MyWebService/Test.asmx/Test
error: undefined
type: ajaxError
readystate: 4
status: 500
【问题讨论】: