Tôi đang sử dụng jQuery 1.6.4 với jQuery Mobile 1.0.1. Tôi đang gặp sự cố bất cứ lúc nào bạn liên kết đến một trang mà sau đó cố gắng thực hiện chuyển hướng 301.Vấn đề chuyển hướng jQuery Mobile 301
tôi đã thiết lập một trang mẫu tại địa chỉ: http://www.widgetsandburritos.com/jquery-mobile-test/
Điều duy nhất trên trang này là jQuery Mobile bao gồm và liên kết đến trang khác mà có một 301 redirect ở một nơi khác.
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
</head>
<body>
<a href="301test.php">301 test</a>
</body>
</html>
301test.php có nội dung sau:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: 301success.html");
?>
này nên chỉ đơn giản là vượt qua trình duyệt để 301success.html. Nó hoạt động nếu bạn trực tiếp đi đến URL
http://www.widgetsandburritos.com/jquery-mobile-test/301test.php
đó Nhưng khi bạn nhấp vào liên kết từ trang sử dụng jQuery Mobile, nó cho thấy "không xác định" để thay thế. JQuery Mobile hiện không có khả năng xử lý chuyển hướng?
Bất kỳ công việc nào có thể xảy ra xung quanh?
Cảm ơn sự giúp đỡ của bạn.
EDIT [3/23/12 00:41 CST]
I also posted this problem on the jQuery Mobile forums. Ai đó đã đề nghị thêm rel = "external" vào thẻ anchor. Kỹ thuật này hoạt động nếu tất cả những gì bạn đang làm là tạo liên kết nhưng sẽ không khắc phục được sự cố nếu bạn chuyển hướng qua một số cơ chế khác, chẳng hạn như yêu cầu POST.
Để minh họa, tôi đã thiết lập một thử nghiệm thứ tại http://www.widgetsandburritos.com/jquery-mobile-test/test2.html
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
</head>
<body>
<form method="post" action="301test.php">
<input type="submit" value="test" />
</form>
</body>
</html>
Thay vì đến tại 301test.php chuyển hướng trang từ một liên kết, nó bây giờ vị trí của một hình thức chúng tôi đang gửi đến. Bối cảnh này sẽ được sử dụng, sẽ là như vậy nếu bạn gửi một biểu mẫu có lỗi, nó sẽ ở lại trên cùng một trang cho phép bạn sửa lỗi. Nếu không có lỗi, nó sẽ chuyển bạn đến trang thành công. Việc này được thực hiện để tránh gửi lại biểu mẫu nếu người dùng làm mới trình duyệt của họ. Nó hoạt động rực rỡ trong các ứng dụng web thông thường. Nhưng trong combo với jQuery Mobile nó dường như không hoạt động.
Chỉ cần nghĩ rằng tôi sẽ đưa ra một số ngữ cảnh bổ sung cho bất kỳ ai khác theo dõi vấn đề này.
Chỉ cần có chút của thành viên này bản thân mình và thay đổi tag hình thức của tôi để bao gồm dữ liệu-ajax = 'false' hiện lừa. – Aaron
Hoàn hảo, chỉ là những gì tôi cần! – user1105056