<%@LANGUAGE="VBSCRIPT" CODEPAGE="950"%>
<%
Function vbs(sn)
Dim detail
sql = "SELECT * FROM table1 WHERE id = " & sn
............
detail.MoveFirst
Do Until detail.EOF
vbs = detail.Fields.Item("name").Value
detail.MoveNext
Loop
detail.Close()
Set detail = Nothing
End Function
%>
function xx() {
var a = 61
alert("<%=vbs(a)%>"); //这样是错误的
alert("<%=vbs(61)%>"); //只能直接传值进去
}
<button type="button" class="btn btn-danger" onClick="xx()">Click</button>
11 个解决方案
#1
用ajax调
#2
用Ajax 调vbscript中的方法?我这里的情况是vbs js html 都在一个asp文件中
#3
都在一个页面里也可以用ajax
#4
你是指直接把参数get到url里,vbs在用过request拿到里面的参数?
#5
是的,get post都可以 输出返回值给js就行
#6
我这样写,但在怎么去调VBS的方法啊?这样写好像没起作用
function xx() {
$.ajax({
url: '<%= Request.ServerVariables("SCRIPT_NAME") %>',
type: "Post",
async: false,
data: {
"vipSN": ModelInstance.sn()
},
sucess: function() {
alert("Update successful")
alert("<%=vbs()%>"); //这么调好像没起作用
},
error: function(xhr){
alert("Error occured during Ajax request, the error status is: " + xhr.status);
}
});
}
function vbs()
Dim detail
Dim detail_numRows
dim aa
aa = Request.QueryString("vipSN")
vbs = aa
end function
#7
发现一个问题,如果用Get的话也没需要重定向到 ***.asp?vipSN=10 这样vbs的方法才能得到参数,因为我是在同一个页面里,所以需要导航到带参数的链接才可以,至于post 我不太清楚是不是也是相同的原理
#8
if request.q..(vipSN)<>null .....exec vbs ...response.end
#9
好像现在这么写vipSN永远都拿不到,需要重定向到带参数的链接上,是不是Post也是一样的道理?
#10
post 的用request.form
或者 url:...?a=flag 然后判断有这个标记执行..
或者 url:...?a=flag 然后判断有这个标记执行..
#11
post 的用request.form
或者 url:...?a=flag 然后判断有这个标记执行..
恩..其实我现在碰到的问题是,button1 我按下去对本页提交了post,但是button2按下去触发本页的vbscript的方法但是拿不到post的数据
$.ajax({
url: '<%= Request.ServerVariables("SCRIPT_NAME") %>',
type: "Post",
async: false,
data: {
"vipSN": ModelInstance.sn()
},
sucess: function(result) {
alert(result);
alert("Update successful")
},
error: function(xhr){
alert("Error occured during Ajax request, the error status is: " + xhr.status);
}
});
<%
function vbs(sn)
Dim detail
Dim detail_numRows
Dim aa
Set aa = Request.Form("vipSN") //在这里并没有拿到数据,是不是因为页面没有刷新,拿不到post出来的数据?
Set detail = Server.CreateObject("ADODB.Recordset")
detail.ActiveConnection = MM_dbconn_STRING
detail.Source = "SELECT * FROM vip WHERE sn=" & sn
detail.CursorType = 0
detail.CursorLocation = 2
detail.LockType = 1
detail.Open()
detail_numRows = 0
detail.MoveFirst
Do Until detail.EOF
vbs = detail.Fields.Item("vip_name").Value
vbs = aa & "aa"
detail.MoveNext
Loop
detail.Close()
Set detail = Nothing
end function
%>
#1
用ajax调
#2
用ajax调
用Ajax 调vbscript中的方法?我这里的情况是vbs js html 都在一个asp文件中
#3
都在一个页面里也可以用ajax
#4
都在一个页面里也可以用ajax
你是指直接把参数get到url里,vbs在用过request拿到里面的参数?
#5
是的,get post都可以 输出返回值给js就行
#6
是的,get post都可以 输出返回值给js就行
我这样写,但在怎么去调VBS的方法啊?这样写好像没起作用
function xx() {
$.ajax({
url: '<%= Request.ServerVariables("SCRIPT_NAME") %>',
type: "Post",
async: false,
data: {
"vipSN": ModelInstance.sn()
},
sucess: function() {
alert("Update successful")
alert("<%=vbs()%>"); //这么调好像没起作用
},
error: function(xhr){
alert("Error occured during Ajax request, the error status is: " + xhr.status);
}
});
}
function vbs()
Dim detail
Dim detail_numRows
dim aa
aa = Request.QueryString("vipSN")
vbs = aa
end function
#7
是的,get post都可以 输出返回值给js就行
发现一个问题,如果用Get的话也没需要重定向到 ***.asp?vipSN=10 这样vbs的方法才能得到参数,因为我是在同一个页面里,所以需要导航到带参数的链接才可以,至于post 我不太清楚是不是也是相同的原理
#8
if request.q..(vipSN)<>null .....exec vbs ...response.end
#9
if request.q..(vipSN)<>null .....exec vbs ...response.end
好像现在这么写vipSN永远都拿不到,需要重定向到带参数的链接上,是不是Post也是一样的道理?
#10
post 的用request.form
或者 url:...?a=flag 然后判断有这个标记执行..
或者 url:...?a=flag 然后判断有这个标记执行..
#11
post 的用request.form
或者 url:...?a=flag 然后判断有这个标记执行..
恩..其实我现在碰到的问题是,button1 我按下去对本页提交了post,但是button2按下去触发本页的vbscript的方法但是拿不到post的数据
$.ajax({
url: '<%= Request.ServerVariables("SCRIPT_NAME") %>',
type: "Post",
async: false,
data: {
"vipSN": ModelInstance.sn()
},
sucess: function(result) {
alert(result);
alert("Update successful")
},
error: function(xhr){
alert("Error occured during Ajax request, the error status is: " + xhr.status);
}
});
<%
function vbs(sn)
Dim detail
Dim detail_numRows
Dim aa
Set aa = Request.Form("vipSN") //在这里并没有拿到数据,是不是因为页面没有刷新,拿不到post出来的数据?
Set detail = Server.CreateObject("ADODB.Recordset")
detail.ActiveConnection = MM_dbconn_STRING
detail.Source = "SELECT * FROM vip WHERE sn=" & sn
detail.CursorType = 0
detail.CursorLocation = 2
detail.LockType = 1
detail.Open()
detail_numRows = 0
detail.MoveFirst
Do Until detail.EOF
vbs = detail.Fields.Item("vip_name").Value
vbs = aa & "aa"
detail.MoveNext
Loop
detail.Close()
Set detail = Nothing
end function
%>