赵老师,应用了你在 客户端访问WebService(中) 的4_JavaScriptConverterUsage.aspx 中的例子,想实现将DataTable中的数据绑定到客户端Select,但不成功。不知问题出现在哪里,请您帮忙解决一下,谢谢!
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="
http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>JavaScriptConverter Usage</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Name="PreviewScript.js" Assembly="Microsoft.Web.Preview" />
</Scripts> <Services>
<asp:ServiceReference Path="DataTableService.asmx" InlineScript="true" />
</Services>
</asp:ScriptManager>
<input type="button" value="Get DataTable" onclick="getDataTable();" />
<br />
<select id="Select1" style="width: 124px">
<option></option>
</select>
<div id="result"></div>
<script language="javascript" type="text/javascript">
var MySelect1;
var flag;
function pageLoad()
{
flag=!flag;
if(flag)
{
MySelect1=new Sys.Preview.UI.Selector($get('Select1'));
MySelect1.initialize();
MySelect1.set_textProperty("ChaXunXiangMu_Name");
MySelect1.set_valueProperty("ChaXunXiangMu_ID");
}
if(!flag)
{flag=true}
}
function getDataTable()
{
DataTableService.GetDataTable(onSucceeded, onFailed);
}
function onSucceeded(result)
{
// alert(result);
MySelect1.set_data(result);
MySelect1.dataBind();
var sb = new Sys.StringBuilder("<table border='1'>");
sb.append("<tr><td>ID</td><td>Text</td></tr>");
for (var i = 0; i < result.rows.length; i++)
{
sb.append(
String.format(
"<tr><td>{0}</td><td>{1}</td></tr>",
result.rows[i]["ID"],
result.rows[i].Text));
}
sb.append("</table>");
$get("result").innerHTML = sb.toString();
}
function onFailed(error)
{
alert(error.get_message());
}
</script>
</form>
</body>
</html>