我正在尝试使用jQuery BlockUI插件在执行排序算法时阻止jQuery对话框.排序的功能如下:
doSort : function() {
$("#sort_dlg").block();
// sort... takes a few seconds
$("#sort_dlg").unblock();
}
Run Code Online (Sandbox Code Playgroud)
它有效,有点.在排序完成之后,对话框才会被阻止.(排序全部在本地完成,没有AJAX调用或任何东西.)如何在排序之前阻止它?
我尝试将block()调用移动到对话框的OK按钮方法:
$(function() {
$("#sort_dlg").dialog({
autoOpen: false,
bgiframe: true,
modal: true,
buttons: {
"Cancel": function() { $(this).dialog("close"); },
"OK": function() {
$("#sort_dlg").block();
doSort();
}
}
});
});
Run Code Online (Sandbox Code Playgroud)
但这没有帮助.(我愿意接受使用其他技术阻止UI的建议.)
在Classic ASP(VBScript)中,如果我尝试创建一个大的2维数组,我会收到"Out of Memory"错误.例如,这个
DIM xxx : xxx = 10000
DIM yyy : yyy = 10000
REDIM aaa(xxx, yyy)
Response.End
Run Code Online (Sandbox Code Playgroud)
这个
Microsoft VBScript runtime error '800a0007'
Out of memory
Run Code Online (Sandbox Code Playgroud)
他们可以使用的另一种数据结构是否可行,或其他一些解决方法?
(2010-01-27)更新:在进一步调查我正在研究的遗留代码时,数组很稀疏.换句话说,仅需要阵列占位符的一部分.像这样:
aaa(0, 0) = 1.23
aaa(101,12) = 1.57
aaa(3020,1200) = 2.58
etc.
Run Code Online (Sandbox Code Playgroud)
我想改变事物来存储这样的值:
aaa(count) = "xxx,yyy,val"
Run Code Online (Sandbox Code Playgroud)
然后使用Split()来获得给定x和y的val,但是每次我知道x和y时,这需要一个耗时的循环遍历数组.有更好的解决方案吗?
arrays vbscript out-of-memory multidimensional-array asp-classic