使用 ajax 传递 # 值不起作用
Passing # values with ajax not working
我试图通过 Ajax 通过 Ajax 工作,方法是在 dom ready 上调用它:
$.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);
}
});
现在,这是正在发送的内容:
http://debug.build.phonegap.com/target/target-script-min.js?_=1381476442102
这意味着,为了调试,我必须使用随机生成的 ID。我也试过这个:url: 'http://debug.build.phonegap.com/target/target-script-min.js?_=hutber',
只是在黑暗中拍摄。
那么,我是否认为#hutber
没有与请求一起正确发送?
编辑
快速思考一下,使用 $.ajax 意味着我正在通过 http 请求动态加载脚本。正如昆汀所提到的,你不能通过#vars
因为这些是客户端。但是,我突然想到,如果我将元素添加到正文中,就像它在页面加载时一样,我可以通过传递:
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);
现在,事情应该好一点,但是不能用手机测试这个理论。但手指交叉。
是和否。您认为#hutber
没有随请求一起发送是正确的,但您认为这是不正确的,这是错误的。
URL 的片段标识符部分纯粹是客户端处理的,因此不应发送到服务器。
如果要将数据附加到 URL 以供服务器处理,请使用查询字符串(以?
字符开头,而不是#
字符(。如果同时具有查询字符串和片段标识符,则必须首先使用查询字符串。
如果将 data
属性包含在传递给 ajax
的对象中(如果您使用的是 GET,就像您在此处一样(,jQuery 将为您生成一个查询字符串。
data { "_": "hutber" }
相关文章:
- 对于使用传递的数据计算的局部范围变量,角度绑定在自定义指令中不起作用
- Angularjs-向工厂传递数据的方法不起作用
- 基本的谷歌chrome扩展消息传递不起作用
- 在Angular Directive中传递函数作为参数不会;不起作用
- 将值从C#asp.net传递到JAVASCRIPT不起作用
- Int Array Django 通过上下文传递到 JS 不起作用
- Highcharts在将javascript变量作为Hightcharts系列数据传递时不起作用
- 使用 <提供程序> 传递上下文存储,在基于 connect() 的场景中不起作用
- 将变量传递给第三个参数的 GSAP TimeLineLite.to() 不起作用
- 通过指令范围传递对象不起作用
- 使用 ajax 传递 # 值不起作用
- 将变量作为 JQuery CSS 选择器传递不起作用
- 从JS传递变量并在PHP中使用它不起作用
- 值正在传递,但警报在 javaScript 中不起作用
- 使用 JavaScript 将 CSS 传递到新页面不起作用
- ng路由传递参数不起作用
- 将变量从 Ajax 传递到 PHP 不起作用
- 尝试传递 JSON 对象 REACTJS 不起作用
- JavaScript 将变量传递给内部单击函数不起作用
- 将传递函数响应到子项不起作用