我有一个java脚本函数来进行自然排序。
但是我不知道如何调用这个java脚本并使用VB脚本在HP UFT中获取js的返回值。
function alphanum(a, b) {
function chunkify(t) {
var tz = [], x = 0, y = -1, n = 0, i, j;
while (i = (j = t.charAt(x++)).charCodeAt(0)) {
var m = (i == 46 || (i >=48 && i <= 57));
if (m !== n) {
tz[++y] = "";
n = m;
}
tz[y] += j;
}
return tz;
}
var aa = chunkify(a);
var bb = chunkify(b);
for (x = 0; aa[x] && bb[x]; x++) {
if (aa[x] !== bb[x]) {
var c = Number(aa[x]), d = Number(bb[x]);
if (c == aa[x] && d == bb[x]) {
return c - d;
} else return (aa[x] > bb[x]) ? 1 : -1;
}
}
return aa.length - bb.length;
}
请告诉我如何拨打js?
答案 0 :(得分:2)
当我需要让UFT执行一些javascript时,我构建了一个函数来调用;这是:
Public Function MISC_ExecuteJavascript(byVal oPage, byVal sJavaScript)
Dim JSEntry
Set JSEntry = oPage.object.documentelement.parentnode.parentwindow
On Error Resume Next
MISC_ExecuteJavascript = JSEntry.eval(sJavaScript)
On Error Goto 0
End Function
你传递了你需要执行javascript的Browser().Page()
对象,以及你想要执行的实际javascript调用。然后该函数将对页面执行它。希望能帮到你