価格の範囲で jquery スライダーを実装したいのですが、jquery を使用してページ Web メソッドを呼び出そうとしますajax
が、Web ページ メソッドの場合は機能しませんが、ajax 呼び出しの URL 属性を a に変更するだけで、webservice
完全に呼び出されます。私は数時間からこれを試していますが、この背後にあるロジックは見つかりません。ここに私のコードがあります
<script type="text/javascript">
var startPosition;
$(document).ready(function () {
var hdnMinPrice = 142;
var hdnMaxPrice = 969;
$("#slider").slider(
{
min: hdnMinPrice,
max: hdnMaxPrice,
range: true,
values: [hdnMinPrice, hdnMaxPrice],
step: 50,
slide: function (event, ui) {
$('#lbl').text(ui.values[0] + ' - ' + ui.values[1]);
},
start: function (event, ui) {
startPosition = ui.value;
//alert('Slider started at: ' + ui.value);
},
stop: function (event, ui) {
$.ajax({
type: "POST",
//url: SearchResult.aspx/FilterByPrice",
url: "WebService.asmx/InsetSubscriber",
data: "{email: '250@yahoo.com'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
alert('Thanks');
// Do something interesting here.
}
});
return false;
}
});
});
</script>
コメントアウトされた URL オプションはページ Web メソッドであり、以下は Web ページ メソッドの定義です。
[WebMethod]
public void FilterByPrice(string email)
{
Response.Write("min" + email);
//Response.Write("max" + max);
}
ここで、Webサービスメソッドは次のとおりです。これは機能しています:
[WebMethod]
public void InsetSubscriber(string email)
{
DALSubscriber objSubscriber = new DALSubscriber();
objSubscriber.InsertSubscriber(email);
}
このコード セグメントの後で、もう一度質問を繰り返します。Web サービス メソッドを使用する同じメソッドが jquery ajax 呼び出しで実行されているページ Web メソッドが機能しない