高手求助:JS与 C# DLL动态库
简单说问题是我在客户端用 JS 从服务器取得的了一个XML文件
var xmlhttp = new ActiveXObject( "Msxml2.XMLHTTP ");
var xmldoc = new ActiveXObject( "Msxml2.DOMDocument ");
var url = "default.aspx " ;
xmlhttp.Open( "POST ",url,false);
xmlhttp.Send( " ");
var result = xmlhttp.ResponseText;
xmldoc.loadXML(result);
现在我需要把xmldoc里的数据发送到本地DLL文件处理打印,我该怎么发送?
已经知道的的处理方式: 1保存成本地文件 把路径发送给DLL文件读取
2以字符串形式发送
<body bgcolor= '#223344 '>
<script language= "javascript ">
<!--
var s= "路径 or 字符串? "
function show()
{
return s;
}
-->
</script>
<object id= "HelloWorld " classid= "clsid:C4483974-AE04-4ec8-A53C-541FD73A3C15 " Width= "256 " Height= "96 " > </object>
<br>
<input type= 'button ' onclick= 'HelloWorld.receive(show()) ' value= 'Click '>
</body>
请问有没有更好的方式? 请各位大虾帮忙,JS实在太差。。。
[解决办法]
转个2003-2-14的————
************************************
服务器端程序方式、打印预览接口调用,下面为例,主要参考项目中的:pageErrorPrint.aspx.vb文件
主调用页
function PrintPage(iPageIndex,strQuery)
{
var strURL;
strURL = "PageErrorPrint.aspx?PageIndex= " + iPageIndex + "&QueryString= " + strQuery;
winPrint=window.open(strURL, " ", "left=2000,top=2000,fullscreen=3 ");
}
打印页HTML源中的预览控制
<SCRIPT language= "javascript ">
document.write( " <object ID= 'WebBrowser ' WIDTH=0 HEIGHT=0
CLASSID= 'CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 '> </object> ");
WebBrowser.ExecWB(7,1);
window.opener=null;
window.close();
</SCRIPT>
程序头
'首先声明表格容器
Protected WithEvents phContainer As System.Web.UI.WebControls.PlaceHolder
'每个表格中的记录数量
Private Const ItemPerTable As Integer = 20
关键的实现部分
'创建一个符合打印要求的表格
tabPagePrint = NewPrintTable()
'将表头添加到此表格中
Call AddTableTitle(tabPagePrint)
'初始化记录器
i = 0
iItemIndex = iStartPoint
For Each clsItem In clsAllData.ErrorCollection
If i > 0 And i Mod ItemPerTable = 0 Then
'添加表格控件到页面中
phContainer.Controls.Add(tabPagePrint)
'在页面中添加一个换行符
Call AddPageBreak()
'创建新一轮的表格
tabPagePrint = NewPrintTable()
Call AddTableTitle(tabPagePrint)
End If
'将记录添加到表格中
Call AddItemToTable(iItemIndex, tabPagePrint, clsItem)
iItemIndex = iItemIndex + 1
i = i + 1
Next
'添加表格控件到页面中
phContainer.Controls.Add(tabPagePrint)
支持函数
'功能:添加页的换行符
Private Sub AddPageBreak()
Dim ltBreak As LiteralControl
ltBreak = New LiteralControl( " <p style= 'page-break-before:always '> ")
phContainer.Controls.Add(ltBreak)
End Sub
'功能:创建一个符合打印要求的表格
Private Function NewPrintTable() As Table
Dim tabSrc As New Table()
tabSrc.Width = Unit.Percentage(100)
tabSrc.Attributes( "border ") = "1 "
tabSrc.CellPadding = 4
tabSrc.CellSpacing = 0
tabSrc.BorderWidth = Unit.Pixel(2)
tabSrc.BorderColor = Color.Black
tabSrc.Style.Add( "FONT-SIZE ", "12px ")
NewPrintTable = tabSrc
End Function
[解决办法]
mark
[解决办法]
接分!
[解决办法]
换个设计吧,这个设计即将没用. (Vista下这种设计通不过IE安全模式....)
[解决办法]
1.你还是用XMLHTTP把值回传给服务器
2.你可以在服务器端写一个转用web serviece来处理