JS调用后台函数的问题

chenxi898 2010-10-28 01:54:19
问题是这样的:
我有一个名为A.js的文件和一个名为B.cs的文件,在B.cs里有一个函数返回值,我如何把这个值传到A.js文件里。
网上有好多资料都是在B.aspx里写JS代码,然后把B.cs的值传过来,而不是单独的.js文件里;而且即使是传到B.aspx的JS代码里,但都是传上一次的值,我想的是传本次的值。举个例子:
B.cs文件:
protected void btnquery_Click(object sender, EventArgs e)
{
string sql = "select SSBH from HS_MAIN";
DataTable dt = Dal.GetDataTable(sql);
if (dt.Rows.Count > 0)
{
string sf = "";
for (int i = 0; i < dt.Rows.Count; i++)
{
if (i == 0)
{
sf = "'" + dt.Rows[i]["SSBH"].ToString() + "'";
}
else
{
sf += ",'" + dt.Rows[i]["SSBH"].ToString() + "'";
}
}
testresult = sf;

}//把查询的结果赋值给字符串testresult

B.aspx代码:
<script type="text/javascript">
function doquerytest()
{
document.getElementById("<%=btnquery.ClientID %>").click();
var sd="<%=testresult%>";
……
}
</script>
控件:
<asp:Button ID="btnquery" runat="server" Text="查询" onclick="btnquery_Click" />
<input type="hidden" id="testvalue" value="<%=testresult%>" />
<img id="imgquery" src="../images/search1.gif" alt="" onclick="doquerytest()" />
当我单击imgquery的时候,sd第一次的值是空的,再次单击的时候,则调用上次的值,我现在就想单击的时候就调用此次的值,因为我下面的代码要用到这个值。这是在.aspx文件里调用,如果是在单独的.js文件里如何调用,谢谢
...全文
188 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qinggeer 2010-10-28
  • 打赏
  • 举报
回复
用ajaxpro吧
要么你就用ajax . (jquery ajax)
claymore1114 2010-10-28
  • 打赏
  • 举报
回复
ajax 调用
porschev 2010-10-28
  • 打赏
  • 举报
回复
放在单独的JS文件中。。<%=%>

用这种方法。。。

http://blog.csdn.net/porschev/archive/2010/10/15/5943579.aspx#FeedBack
lchy110 2010-10-28
  • 打赏
  • 举报
回复
value="<%=testresult%>" 这种形式的东东 貌似在单独的JS里不能被识别
<%=%> 这样的好像得放在aspx页里的<script></script>里获取

其实你用ajaxpro 就完全解决问题了
damjmk2 2010-10-28
  • 打赏
  • 举报
回复
b.aspx 里要引用a.js文件

b.cs 里可以用response.write() 方法写匿名的js函数进行传值

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧