SQL Server 데이터베이스에서 데이터를 검색하고 jQuery ajax를 사용하여 데이터를 검색하려고합니다. 이 데이터를 일부 jqPlot 차트에 가져와야하며 이것이 가장 좋은 방법이라고 생각했습니다. 더 좋은 방법이 있다면 알려주세요.jQuery ajax를 사용하여 Webservice에서 데이터를 검색 할 수 있습니까?
자바 스크립트/jQuery를 :
$(document).ready(function() {
$(".datepicker").datepicker();
$(".submitButton").click(handleSubmitButton);
}); //end of document ready
function handleSubmitButton() {
var AnDParms = new Object();
AnDParms.startDate = $('.start-date').val();
AnDParms.endDate = $('.end-date').val();
AnDParms.facility = $('.FacilityDDL').val();
var DTO = { 'parameters': AndParms };
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(DTO),
url: "GetAdmitsDischarges.asmx.cs/GetAandD",
dataType: "json",
success: function (data) {
alert("Data: " + data.d);
// do chart stuff here.
},
error: function (data) {
alert("Error!" + data.d);
} //end of success
}); //end of ajax call
} //end of handleSubmitButton function
웹 서비스 (GetAdmitsDischarges.asmx.cs
) : 여기
namespace DashboardTest2010
{
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[ScriptService]
public class GetAdmitsDischarges : WebService
{
public class AnDParms
{
public string startDate { get; set; }
public string endDate { get; set; }
public string facility { get; set; }
}
public class AnDReturns
{
public string Admits { get; set; }
public string Discharges { get; set; }
}
[WebMethod]
public string GetAandD(AnDParms parameters)
{
//StringBuilder results = new StringBuilder();
AnDReturns resultsObj = new AnDReturns();
resultsObj.Admits = "0";
resultsObj.Discharges = "0";
string results = "";
string connect = (the data connection string)
StringBuilder query = new StringBuilder();
query.Append("Select 'Admissions' SeriesType,");
//the rest of the query.
using (SqlConnection conn = new SqlConnection(connect))
{
using (SqlCommand cmd = new SqlCommand(query.ToString(), conn))
{
cmd.Parameters.AddWithValue("StartDate", parameters.startDate.ToString());
cmd.Parameters.AddWithValue("EndDate", parameters.endDate.ToString());
cmd.Parameters.AddWithValue("FacilityID", parameters.facility.ToString());
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
while (rdr.Read())
{
if (rdr["SeriesType"].ToString() == "Admissions")
{
resultsObj.Admits = rdr["SeriesCount"].ToString();
}
if (rdr["SeriesType"].ToString() == "Discharges")
{
resultsObj.Discharges = rdr["SeriesCount"].ToString();
}
}
results = JsonConvert.SerializeObject(resultsObj);
}
}
}
return results;
}
}
}
마크 최대 2 개 날짜 필드와 단순한 페이지입니다 (datepickers로 설정), 드롭 다운 목록 (facility) 1 개, 제출 버튼 1 개가 있습니다.
<script type="text/javascript" src="js/jqPlot/jquery.jqplot.js"></script>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jqPlot/jquery.jqplot.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.10.3.custom.js"></script>
<script type="text/javascript" src="js/json2.js"></script>
<script type="text/javascript" src="js/DashboardTest.js"></script>
은 "jquery.js는"jqPlot와 함께 JQuery와 있습니다 : 여기에 있는지 내가하는 데 필요한 모든을 만들기 위해 내 스크립트 태그입니다. 나는 IE 7+ (그러므로 json2.js)를 지원해야한다. DashboardTest.js는 자바 스크립트이다.
실행하면 아무 것도 발생하지 않고 제출 버튼을 클릭해도 경고가 표시되지 않습니다. 어떤 도움이라도 대단히 감사 할 것입니다. 내 시스템 관리자는 내가 궁금해하는 경우 피들을 설치하지 못하게했다 ...
브라우저 도구의 자바 스크립트 콘솔과 네트워크 탭에서 오류를 확인 했습니까? xhr 요청이 기대했던 것임을 확인 했습니까? –
웹 브라우저의 웹 개발자 콘솔에 오류가 있습니까? –
방화 광 콘솔에 오류가 없습니다. – BradAtCC