2013-10-11 13 views
5

tôi đang cố gắng để có được weinre làm việc thông qua Ajax bằng cách gọi này trên dom đã sẵn sàng:Passing # giá trị với ajax không làm việc

$.ajax({ 
    url: 'http://debug.build.phonegap.com/target/target-script-min.js#hutber', 
    dataType: "script", 
    crossDomain: true, 
    error: function(data){ 
     c(data.status); 
    }, 
    success: function(data){ 
     c(data); 
    } 
}); 

Bây giờ, đây là những gì đang được gửi:

http://debug.build.phonegap.com/target/target-script-min.js?_=1381476442102 

nào có nghĩa là, đối với tôi để gỡ lỗi tôi phải sử dụng một ID được tạo ngẫu nhiên. Tôi đã thử điều này cũng: url: 'http://debug.build.phonegap.com/target/target-script-min.js?_=hutber', Chỉ chụp trong bóng tối.

Vì vậy, tôi có đang nghĩ rằng #hutber không được gửi chính xác theo yêu cầu không?

Sửa

Chỉ cần một ý nghĩ nhanh chóng, sử dụng $ .ajax có nghĩa là tôi đang tải một kịch bản tự động thông qua một yêu cầu http. Như đã đề cập bởi Quentin bạn không thể vượt qua #vars vì đây là những mặt khách hàng. Nó xảy ra với tôi tuy nhiên tôi có thể vượt qua đèo nếu tôi thêm phần tử vào cơ thể như thể nó đã có trên tải trang:

var s = document.createElement('script'); 
s.setAttribute("src","http://debug.build.phonegap.com/target/target-script-min.js#hutber"); 
document.getElementsByTagName('body')[0].appendChild(s); 

Bây giờ, mọi thứ sẽ làm việc ra tốt hơn một chút, không thể kiểm tra điều này lý thuyết với một điện thoại di động tuy nhiên. Nhưng những ngón tay đã vượt qua.

Trả lời

7

Có và không. Bạn đang nghĩ rằng #hutber không được gửi cùng với yêu cầu, nhưng bạn sai khi nghĩ rằng điều này là không chính xác.

Phần định danh phân đoạn của URL được xử lý hoàn toàn phía máy khách nên không bao giờ được gửi đến máy chủ.

Nếu bạn muốn đính kèm dữ liệu vào URL để máy chủ xử lý, hãy sử dụng chuỗi truy vấn (bắt đầu bằng ký tự ? và không phải là ký tự #). Nếu bạn có cả chuỗi truy vấn và số nhận dạng phân đoạn thì chuỗi truy vấn phải đến trước tiên.

jQuery sẽ tạo chuỗi truy vấn cho bạn nếu bạn bao gồm thuộc tính data cho đối tượng bạn chuyển đến ajax (nếu bạn đang sử dụng GET, như bạn đang ở đây).

data { "_": "hutber" } 
+0

Đúng, đây là những suy nghĩ chính xác của tôi. Tôi đã thử đi qua như dữ liệu nhưng không có may mắn. Bây giờ là lúc để mang nó đến với những người mà tôi tin tưởng :) –

+0

Xem câu hỏi được cập nhật, có ý nghĩ có thể giúp :) –

Các vấn đề liên quan