asp-classic – 带参数的vbscript:getref
谁有经验将参数传递给使用getref调用的函数?
下面的代码只是一个例子,dons’t不工作,如何将参数传递给mySub子? <button id="myBtn">Click me</button> <script type="text/vbscript"> document.getElementById("myBtn").onclick=GetRef("mySub") Sub mySub(parameter) alert(parameter) End Sub </script> 解决方法
首先看
at this article about event handling(任何人都知道更好的参考?)来获取上下文:
然后试试这个.hta: <html> <!-- !! https://stackoverflow.com/questions/10741292/vbscript-getref-with-parameter --> <head> <title>GetRef HTA</title> <HTA:APPLICATION APPLICATIONNAME="GetRef HTA" > <SCRIPT Language="VBScript"> Sub SetClickHandlers() Set bttB.onClick = GetRef("NoParmsBttB") Set bttE.onClick = GetRef("Magic") Set bttF.onClick = GetRef("Magic") End Sub ' trivial handler,literally set Sub NoParmsBttA() Log "NoParmsBttA() called." End Sub ' trivial handler,set via GetRef Sub NoParmsBttB() Log "NoParmsBttB() called." End Sub ' one handler for many buttons,literally set Sub handleClickCD(oBtt) Log "handleClickCD() called; you clicked " & oBtt.id End Sub ' one handler for many buttons,set via Magic() & GetRef Sub handleClickEF(oBtt,dtWhen) Log "handleClickEF() called; you clicked " & oBtt.id & " at " & CStr(dtWhen) End Sub ' stuffed via GetRef into onClick Sub Magic() handleClickEF Me,Now End Sub Sub Log(s) MsgBox s,Now End Sub </SCRIPT> </head> <body onLoad="SetClickHandlers"> <!-- literal onClick handler in html code --> <button id="bttA" onClick="NoParmsBttA">A</button> <!-- no literal onClick handler,will be set by SetClickHandlers via GetRef() --> <button id="bttB">B</button> <!-- literal onClick handlers with parameter (Me,i.e. the Button) --> <button id="bttC" onClick="handleClickCD Me">C</button> <button id="bttD" onClick="handleClickCD Me">D</button> <!-- Two params handler via SetClickHandlers & Magic --> <button id="bttE">E</button> <button id="bttF">F</button> </body> </html> 查看 >那个/如何指定没有参数的Sub来按字面意思或通过GetRef处理点击(A或B) WRT Salman A的回答: 如果您确实需要一条错误消息,例如: --------------------------- Error --------------------------- A Runtime Error has occurred. Do you wish to Debug? Line: 54 Error: Wrong number of arguments or invalid property assignment: 'mySub' --------------------------- Yes No --------------------------- 然后你只需要添加: Sub mySub(parameter) alert(parameter.toString()) End Sub 和 <!-- literal onClick handler in html code --> <button id="bttG" onClick="mySub">G</button> 测试.hta. WRT彼得的建议 – 保持简单是值得的: Option Explicit Sub WithLotsOfParms(a,b,c,d) WScript.Echo Join(Array(a,d)) End Sub Dim f : Set f = GetRef("WithLotsOfParms") WithLotsOfParms 1,2,3,4 f 1,4 输出: cscript 01.vbs 1 2 3 4 1 2 3 4 您使用GetRef()设置的变量名称与您使用文字子/函数名称完全一样,可能已在昨天建立. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 无法在UpdatePanel中下载文件
- ASP.NET编译器在更新到5.2.2之后无法加载System.Web.Mvc
- Asp.net GridView使用大全(分页实现)
- model-view-controller – MVC中的数据验证
- asp.net-mvc – ASP.NET MVC ViewData和视图模型的最佳实践
- Pro ASP.NET Core MVC 2翻译计划:第一章
- Asp.Net App Pool重叠回收时间?
- “协变”、“逆变”与Delegate类型转换
- 按代码更改ASP.NET成员资格提供程序
- asp.net-mvc – 如何在点击电子邮件超链接时打开outlook
- asp.net-mvc – 如何识别ASP.NET MVC网站?
- .net – Textboxfor mvc3日期格式和日期验证
- asp.net-mvc – 使用像Stackoverflow这样的查询字
- asp.net-mvc – “安全感知”动作链接?
- 【总结 Anchor-free1】Anchor-Free Keypoint方法
- asp.net-mvc – 什么是ASP.Net MVC查看引擎?
- asp.net – __doPostBack在DotNetNuke网站上未定
- Asp.net Identity 2.0更新用户
- asp.net-mvc – 如何在路由上处理null {id}?
- asp.net – 在Html.BeginForm之外提交按钮