高手请进,拖了一个月的问题总算有一点希望了,但是... 补充一下:有人用过用javascript访问DOM吗,有没有文档?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为什么你不用c#后台邦定呢?是不是觉得效率不高?如果单是为了生成DropDownlist选单,我认为你可以将取出来的数据放入一个数组交给前台javascript去处理,这样的话效率也是不错的。 try if(!event.result.error){//txtResult.value = event.result.value.xml;document.write("<xml id='test'>"+event.result.value.xml+"</xml>");} 在页面里面加个table<table id="t1" datasrc="#test"><tr><td><div datafld="ProvinceName"></div></td></tr></table> 楼上的document.write("<xml id='test'>"+event.result.value.xml+"</xml>");不行!! 这是个很简单的问题,用vbscript很容易搞定的,如有需要可贴上我的源码 当然要了,最好是javascript,但还是很感谢您,一定给分!! <html><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style>td{font-size:14px}</style><script language="javascript"> function formchange() { form1.select3.disabled=!(form1.select2.value=='股东代码'); description.innerText=form1.select2.value+":"; }</script></head><body bgcolor="#FFFFFF" text="#000000"><%set xmlobj=server.createobject("microsoft.xmldom")sourcexmlfile=server.mappath("xml\information.xml")xmlobj.load(sourcexmlfile)set objroot=xmlobj.documentelement.selectsinglenode("信息列表")%><table border="0" width="219" align="center" cellpadding=0 cellspacing=0> <tr> <td height="158"> <div align="center"><img src="image/logo.gif" width="354" height="193"></div> </td> </tr></table><form name="form1" method="post" action=""> <table border="0" width="376" align="center" > <tr> <td width="137" align=right>帐号类别:</td> <td width="250"> <select name="select2" onchange="formchange()"> <%'=========从XML文件得到帐号类别列表=============max_number=objroot.childnodes.item(0).childnodes.length-1for i=0 to max_numberresponse.write "<option value="&objroot.childnodes.item(0).childnodes.item(i).text&">"&objroot.childnodes.item(0).childnodes.item(i).text&"</option>"next%> </select> 市场: <select name="select3"> <%'=========从XML文件得到市场类别列表=============max_number=objroot.childnodes.item(1).childnodes.length-1for i=0 to max_numberresponse.write "<option value="&objroot.childnodes.item(1).childnodes.item(i).text&">"&objroot.childnodes.item(1).childnodes.item(i).text&"</option>"next%> </select> </td> </tr> <tr> <td width="137" align="right">营业部名:</td> <td width="250"> <select name="select"> <%'=========从XML文件得到营业部名称列表=============max_number=objroot.childnodes.item(2).childnodes.length-1for i=0 to max_numberresponse.write "<option value="&objroot.childnodes.item(2).childnodes.item(i).text&">"&objroot.childnodes.item(2).childnodes.item(i).text&"</option>"next%> </select> </td> </tr> <!--=================================================================================--> <tr> <td width="137" align=right name="description" id="description">资金帐号:</td> <td width="250"> <input type="text" name="textfield" size="40"> </td> </tr> <tr> <td width="137" align=right>交易密码:</td> <td width="250"> <input type="text" name="textfield2" size="40"> </td> </tr> <tr> <td width="137" align=right>身份证号:</td> <td width="250"> <input type="text" name="textfield3" size="40"> </td> </tr> <tr> <td colspan="2" align=center> <input type="submit" name="Submit" value=" 登录 " > <input type="reset" name="reset" value=" 重填 " > </td> </tr> </table></form></body></html>====================以下是XML文件====================<?xml version='1.0' encoding='gb2312'?><登录信息> <信息列表> <帐号> <帐号类型1>资金帐号</帐号类型1> <帐号类型2>股东代码</帐号类型2> </帐号> <市场> <市场类型1>深圳A股</市场类型1> <市场类型2>上海A股</市场类型2> <市场类型3>深圳B股</市场类型3> <市场类型4>上海B股</市场类型4> </市场> <营业部名称> <营业部1>武汉营业部一</营业部1> <营业部1>武汉营业部二</营业部1> <营业部1>武汉营业部三</营业部1> <营业部1>武汉营业部四</营业部1> </营业部名称> </信息列表></登录信息> 老兄,我要的是客户端代码访问DOM的情形,不能是服务器端代码 还有,怕你们误解我的意思,我再说一遍:我要求用javascript脚本建数据岛,然后用我从webservice中获得的数据填充到数据岛,最后再将它绑定到table中显示出来。 嗯我犯了一个错误,不能在function里用document.write而且event.result.value.xml格式比较多,不好直接用,不过用XMLDOM应该没问题1。你可以让webservice返回string 类型既return ds.getxml()然后把上面的改为 var t=document.createElement("xml"); t.id="test"; t.innerHTML=event.result.value; document.body.appendChild(t); 后面<body onload="init()"> <div id="service" style="behavior:url(webservice.htc)" onresult="onWSresult()"> </div> <table datasrc="#test"> <tr> <td><div datafld="ProvinceName"></div></td> </tr> </table></body> 不会吧我调通了的你怎么用的?贴下你的htm 在前面的基础上document.body.appendChild(t); 后面加var p=document.createElement("select");p.id="Province";var nodes=t.documentElement.childNodes;p.options.add(new Option(""));for(i=0;i<nodes.length;i++){ p.options.add(new Option(nodes[i].selectSingleNode("操作").text));}document.body.appendChild(p); 其实如果你是想实现下拉列表的话在你最初那个代码里var provinces = event.result.value.selectNodes("//ProvinceName");和var nodes=t.documentElement.childNodes;的值应该是一样的其他参照改一下就可以了不过要用table直接绑定数据,对xml的格式有些要求,所以我才新建一个xml object 求一条sql语句。。。 大神 求助!!asp.net fileupload控件图片上传 如何实现定时提醒 100分请高手解答(asp-SQL) .net后台如何获得js写的cookie?急啊 关于asp.net 的一点小经验 不知道你们发现没有 寻找共同创业者。。。。。。共同创业!!! 大家帮顶啊 问一个T-sql的问题 GridView中内嵌DropDownList控件 iis7.0 重定向 DataGrid分页问题好办,但是你们注意到没?每次分页数据库都被重新执行了一遍,不是说数据存储在客户内存中的吗? DataGrid:为什么UPDATE里的数据不是更新以后的?
如果单是为了生成DropDownlist选单,我认为你可以将取出来的数据放入一个数组交给前台javascript去处理,这样的话效率也是不错的。
//txtResult.value = event.result.value.xml;
document.write("<xml id='test'>"+event.result.value.xml+"</xml>");
}
在页面里面加个table
<table id="t1" datasrc="#test">
<tr>
<td><div datafld="ProvinceName"></div>
</td>
</tr>
</table>
document.write("<xml id='test'>"+event.result.value.xml+"</xml>");
不行!!
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
td{font-size:14px}
</style>
<script language="javascript">
function formchange()
{
form1.select3.disabled=!(form1.select2.value=='股东代码');
description.innerText=form1.select2.value+":";
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<%
set xmlobj=server.createobject("microsoft.xmldom")
sourcexmlfile=server.mappath("xml\information.xml")
xmlobj.load(sourcexmlfile)
set objroot=xmlobj.documentelement.selectsinglenode("信息列表")
%>
<table border="0" width="219" align="center" cellpadding=0 cellspacing=0>
<tr>
<td height="158">
<div align="center"><img src="image/logo.gif" width="354" height="193"></div>
</td>
</tr>
</table>
<form name="form1" method="post" action="">
<table border="0" width="376" align="center" >
<tr>
<td width="137" align=right>帐号类别:</td>
<td width="250">
<select name="select2" onchange="formchange()">
<%
'=========从XML文件得到帐号类别列表=============
max_number=objroot.childnodes.item(0).childnodes.length-1
for i=0 to max_number
response.write "<option value="&objroot.childnodes.item(0).childnodes.item(i).text&">"&objroot.childnodes.item(0).childnodes.item(i).text&"</option>"
next
%>
</select>
市场:
<select name="select3">
<%
'=========从XML文件得到市场类别列表=============
max_number=objroot.childnodes.item(1).childnodes.length-1
for i=0 to max_number
response.write "<option value="&objroot.childnodes.item(1).childnodes.item(i).text&">"&objroot.childnodes.item(1).childnodes.item(i).text&"</option>"
next
%>
</select>
</td>
</tr>
<tr>
<td width="137" align="right">营业部名:</td>
<td width="250">
<select name="select">
<%
'=========从XML文件得到营业部名称列表=============
max_number=objroot.childnodes.item(2).childnodes.length-1
for i=0 to max_number
response.write "<option value="&objroot.childnodes.item(2).childnodes.item(i).text&">"&objroot.childnodes.item(2).childnodes.item(i).text&"</option>"
next
%>
</select>
</td>
</tr>
<!--=================================================================================-->
<tr>
<td width="137" align=right name="description" id="description">资金帐号:</td>
<td width="250">
<input type="text" name="textfield" size="40">
</td>
</tr>
<tr>
<td width="137" align=right>交易密码:</td>
<td width="250">
<input type="text" name="textfield2" size="40">
</td>
</tr>
<tr>
<td width="137" align=right>身份证号:</td>
<td width="250">
<input type="text" name="textfield3" size="40">
</td>
</tr>
<tr>
<td colspan="2" align=center>
<input type="submit" name="Submit" value=" 登录 " >
<input type="reset" name="reset" value=" 重填 " >
</td>
</tr>
</table>
</form>
</body>
</html>
====================以下是XML文件====================
<?xml version='1.0' encoding='gb2312'?>
<登录信息>
<信息列表>
<帐号>
<帐号类型1>资金帐号</帐号类型1>
<帐号类型2>股东代码</帐号类型2>
</帐号>
<市场>
<市场类型1>深圳A股</市场类型1>
<市场类型2>上海A股</市场类型2>
<市场类型3>深圳B股</市场类型3>
<市场类型4>上海B股</市场类型4>
</市场>
<营业部名称>
<营业部1>武汉营业部一</营业部1>
<营业部1>武汉营业部二</营业部1>
<营业部1>武汉营业部三</营业部1>
<营业部1>武汉营业部四</营业部1>
</营业部名称>
</信息列表>
</登录信息>
我要求用javascript脚本建数据岛,然后用我从webservice中获得的数据填充到数据岛,最后再将它绑定到table中显示出来。
我犯了一个错误,不能在function里用document.write
而且event.result.value.xml格式比较多,不好直接用,不过用XMLDOM应该没问题1。
你可以让webservice返回string 类型
既return ds.getxml()然后把上面的改为
var t=document.createElement("xml");
t.id="test";
t.innerHTML=event.result.value;
document.body.appendChild(t); 后面<body onload="init()">
<div id="service" style="behavior:url(webservice.htc)" onresult="onWSresult()">
</div>
<table datasrc="#test">
<tr>
<td><div datafld="ProvinceName"></div></td>
</tr>
</table>
</body>
我调通了的
你怎么用的?
贴下你的htm
document.body.appendChild(t); 后面加var p=document.createElement("select");
p.id="Province";
var nodes=t.documentElement.childNodes;
p.options.add(new Option(""));
for(i=0;i<nodes.length;i++)
{
p.options.add(new Option(nodes[i].selectSingleNode("操作").text));
}
document.body.appendChild(p);
如果你是想实现下拉列表的话
在你最初那个代码里
var provinces = event.result.value.selectNodes("//ProvinceName");
和var nodes=t.documentElement.childNodes;的值应该是一样的
其他参照改一下就可以了不过要用table直接绑定数据,对xml的格式有些要求,所以我才新建一个
xml object