输出js 调用js

JavaScript021

输出js 调用js,第1张

<!--#include file="conn/conn.asp"-->

<%

set rs=server.createobject("adodb.recordset")

sql="select * from [jiangzuo] order by jiangzuo_id DESC"

rs.open sql,conn,1,1

%>

document.write("<form id=\"form1\" name=\"form1\" method=\"post\" action=\"\">")

document.write("<table width=\"100%\" border=\"0\" cellspacing=\"0\" style=\"line-height:24px\">")

document.write(" <tr>")

document.write("<td align=\"right\">名称:</td>")

document.write("<td width=\"135\"><%=rs("jiangzuo_tite")%><input name=\"jiangzuo\" type=\"hidden\" id=\"jiangzuo\" value=\"<%=rs("jiangzuo_tite")%>\" /></td>")

document.write(" </tr>")

document.write(" <tr>")

document.write("<td align=\"right\">主讲:</td>")

document.write("<td><%=rs("jiangzuo_name")%><input name=\"zhujiang\" type=\"hidden\" id=\"zhujiang\" value=\"<%=rs("jiangzuo_name")%>\" /></td>")

document.write(" </tr>")

document.write(" <tr>")

document.write("<td align=\"right\">时间:</td>")

document.write("<td><%=rs("jiangzuo_time")%><input name=\"shijian\" type=\"hidden\" id=\"shijian\" value=\"<%=rs("jiangzuo_time")%>\" /></td>")

document.write(" </tr>")

document.write(" <tr>")

document.write("<td height=\"51\" colspan=\"2\" align=\"center\"><img src=\"/templets/default/images/baoming.gif\" width=\"68\" height=\"24\" /> <img src=\"/templets/default/images/yuding.gif\" width=\"69\" height=\"24\" /></td>")

document.write(" </tr>")

document.write("</table>")

document.write("</form>")

什么意思?是想在页面上的元素(比如某个文本框)里显示成('张三'),即在 name 值两边也要显示出单引号吗?若是,应该这样写:……f1.c1.value="'" + name + "'",或者这么写:……f1.c1.value='\'' + name + '\'',即使用转移符。另两个一样。

ActiveX控件调用JavaScript函数的方法

1.向ActiveX注册JS函数:

在ActiveX中添加接口方法 - void RegisterFunction(BSTR bstrFuncName, IDispatch* dispFunc)

JavaScript代码声明一个函数,并调用RegisterFunction接口向ActiveX注册该函数,供ActiveX调用。

2.保存注册的函数,ActiveX使用CComDispatchDriver对象保存注册的JS函数(IDispatch接口指针)

CComDispatchDriver m_Func1

void RegisterFunction(BSTR bstrFuncName, IDispatch* dispFunc)

{

if (bstrFuncName == "1")

m_Func1 = dispFunc

}

3.调用注册的函数,ActiveX使用CComDispatchDriver::InvokeN函数调用注册的函数

以下是对接受一个无符号整型参数的JS函数的调用:

VARIANT varArg[1]

varArg[0].vt = VT_UINTvarArg[0].uintVal = 1

try{

m_Func1.InvokeN((DISPID)DISPID_VALUE, varArg, 1)

}

catch(...){}

4.注意,对JS函数的调用必须在ActiveX程序的主线程中执行!