Hỏi về ajax trong asp
Em xin chào mọi người , mọi người cho em hỏi em đang làm web bằng asp , em có sử dụng kỹ thuật ajax để thực hiện một số thao tác , em để code ajax lẫn cùng view thì không sao , chạy ổn nhưng nhìn hơi rối nên em bê nguyên code ajax bỏ vô một file js rồi nhúng qua view thì chạy lại thì ăn đạn 404 , dưới đây là mô tả code của em :
function Logout() {
var urlCurrent = window.location.href;
$.ajax({
url: '@Url.Action("Logout", "User")',
type: 'POST',
data: JSON.stringify({}),
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function (data) {
if (data == "true") {
window.location.replace(url);
}
},
error: function () {
}
});
};
cùng code này em để chung với view thì chạy ổn định ( trong thẻ script) ,nhưng tới khi em bỏ code vô file js rồi nhúng qua view thì bị báo lỗi 404
Kết quả:
em nghĩ là do file js em đặt ở trong thư mục content còn controller cần hướng tới thì lại nằm trong thư mục Controllers , vì không đồng cấp nên nó không tìm thấy nên báo 404 , vậy em có cách nào để xử lý chuyện này không ạ ?
Em xin chân thành cảm ơn .
Vì asp nó không xử lý tập tin .js như tập tin .asp.
Vì vậy
@Url.Action("Logout", "User")
không được chuyển sang url mà bạn muốn.Trong javascript bạn viết url: ‘@Url.Action(“Logout”, “User”)’ làm sao mà chạy được
ra vậy , vậy có cách nào khác không ạ , em không muốn mỗi lần nhấn crtl + U thì lại phải thốt lên : wtf cái quái gì thế này
Bạn viết thẳng url luôn, chẳng hạn:
.../Logout.aspx"
Trong
Logout.aspx
nhận dữ liệu POST sẽ thực hiện đăng xuất người dùng.dạ em làm được rồi ạ , em xin chân thành cảm ơn ạ
Nếu bạn muốn đưa link động vào js thì mình nghĩ bạn có thể lưu cái link động đó ngoài asp với 1 properties nào đó rồi qua jquery lấy data từ prop đó bỏ vào url ^^
Dạ em lưu cách bác phát chỉ thì ok r ạ