Javascript另一个类属性访问
我的javascript类包含以下代码,并将其保存为globalrates.js文件Javascript另一个类属性访问,javascript,jquery,Javascript,Jquery,我的javascript类包含以下代码,并将其保存为globalrates.js文件 $(function() { setInterval('rates.set_rates()',1000); }); rates = { marketstatus: { 'goldrate': '', 'status': '' }, set_rates : function() { var my_Date = new Date(
$(function() {
setInterval('rates.set_rates()',1000);
});
rates = {
marketstatus: {
'goldrate': '',
'status': ''
},
set_rates : function() {
var my_Date = new Date();
$.ajax({
type: "GET",
url: "http://localhost:90/appname/rateXml.xml"+"?nocache=" + my_Date.getUTCSeconds(),
dataType: "xml",
cache: false,
success: function(xml) {
try {
var data = $.xml2json(xml);
if(data.trade_type == 3 || data.rate_display ==0){
rates.marketstatus['goldrate'] = "";
rates.marketstatus['status'] = "0";
}else {
rates.marketstatus['goldrate'] = data.goldrate;
rates.marketstatus['status'] = "1";
}
}catch(error){
console.log(error);
}
},
error: function(request,error) {
console.log(error);
}
});
}
}
这个js文件是我的全局文件,包含在我的header.php文件中
我还有另一个页面,比如goldbuy.php,这里我必须从globalrates.js获取当前的黄金价格
所以我在buygold.js文件中尝试了以下代码
console.log(rates.marketstatus['goldrate']);
但它不起作用,如何为javascript类使用get和set方法(类对象创建为globalrates.js文件)
rates.marketstatus['goldrate']
应该可以。您确定要在您的goldbuy.php
中包含您的globalrates.js
?如果在goldbuy.php
中包含header.php
,我假设是。我认为,问题是,您需要设置一个间隔1秒的来设置速率。因为ajax是asyncron,所以您尝试在这些属性存在之前控制台日志。尝试在success()回调中放入console.log(…)语句,以确保在尝试访问该值之前服务调用已完成。