Robię żądania Ajax tak:Wywołanie response.redirect przez Ajax
$(".box01 .selproduct").live("click", function(e) {
var color = $(this).parent('.box01').find('.color').val();
var size = $(this).parent('.box01').find('.size').val();
var pid=$(this).parent('.box01').find('.hdinput').val();
var pathname = window.location.pathname;
var data = { submit: "selected",size:size,color:color,pid: pid};
$.ajax({
type: "POST",
url: pathname,
data: data,
success: function(data) {
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
},
complete: function(data) {
}
});
return false;
});
A na stronie serwera Zrobiłem trochę kodu tak:
if (!string.IsNullOrEmpty(HttpContext.Current.Request.QueryString["pid"]))
{
var path = HttpContext.Current.Request.Url.AbsolutePath;
HttpContext.Current.Response.Redirect(path);
}
Ajax POST działa dobrze. Widzę w Narzędziach dla webmasterów w mozilli, ale strona nie jest przekierowywana na inną stronę, tak jak przypuszczałem. Czy ktoś może mi powiedzieć, co robię źle?
Czy nie można wywołać Response.Redirect
przez Ajax?
Nawiasem mówiąc Live jest depreceated, należy użyć na http://api.jquery.com/live/ – adt