我通常在页面上创建全局变量,然后在js中使用它们。 类似于:
//mypage.html
<script type="text/javascript">
var loadScansUrl = "<%=Url.Action<ReportScannerRunController>(controller => controller.LoadScans())%>";
var loadInstancesUrl = "<%=Url.Action<ReportScannerRunController>(controller => controller.LoadInstances(-1))%>";
</script>
然后我直接在需要的地方使用它们。
//myfile.js
Ext.Ajax.request({
url: loadInstancesUrl, // here is the usage!!!
headers: {
'Content-Type': 'application/json'
},
params: this.scanId,
scope: this,
success: function (response) {
var result = Ext.decode(response.responseText);
var comboData = [];
Ext.each(result.Instances, function (instance) {
comboData.push({ Value: instance });
});
instances.store.loadData(comboData);
}
});
也许这是一个好主意,所有这些变量收集到一个全局对象,如:
var globalVariables = {};
globalVariables.someVariable = 2;
所以你必须一个入口点到全局数据。
这只是我这样做的方式,很高兴听到别人怎么做。