IronPython 也玩 Ajax!
在 IronPython 搭建的项目中(也可以是和 C# 的混合项目,详见我前一篇 post),可以使用 Anthem.NET 来轻松实现 Ajax 功能。
下面我简单的演示一个例子:在页面上我们分别放一个 Anthem 的文本框和按钮控件,点击按钮时,用异步回调的方式更改文本框中的值。
代码很简单:
页面 ajax1.aspx:
后台代码 ajax1.aspx.py:
演示效果:

例子虽然非常简单,但在目前来看,可以表明 IronPython for ASP.NET 的实现有着无限的应用可能 :)
上述例子中需要注意的是,IronPython 的源代码中字符串如果包含中文,则需要用 u'字符串' 的方式来表示,否则会失败。并且这个代码文件需要保存为 UTF-8 格式。
下面我简单的演示一个例子:在页面上我们分别放一个 Anthem 的文本框和按钮控件,点击按钮时,用异步回调的方式更改文本框中的值。
代码很简单:
页面 ajax1.aspx:
<%@ Page Language="IronPython" CodeFile="ajax1.aspx.py" %>
<%@ Register Assembly="Anthem" TagPrefix="anthem" Namespace="Anthem" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>IronPython 的 Ajax 例子</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<anthem:TextBox ID="txt1" runat="server" />
<anthem:Button ID="btn1" runat="server" Text="测试" AutoCallBack="true" PreCallBackFunction="" OnClick="btn1_Click" />
</div>
</form>
</body>
</html>
<%@ Register Assembly="Anthem" TagPrefix="anthem" Namespace="Anthem" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>IronPython 的 Ajax 例子</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<anthem:TextBox ID="txt1" runat="server" />
<anthem:Button ID="btn1" runat="server" Text="测试" AutoCallBack="true" PreCallBackFunction="" OnClick="btn1_Click" />
</div>
</form>
</body>
</html>
后台代码 ajax1.aspx.py:
def btn1_Click(sender, args):
txt1.Text = u"中国人"
txt1.UpdateAfterCallBack = True
txt1.Text = u"中国人"
txt1.UpdateAfterCallBack = True
演示效果:

例子虽然非常简单,但在目前来看,可以表明 IronPython for ASP.NET 的实现有着无限的应用可能 :)
上述例子中需要注意的是,IronPython 的源代码中字符串如果包含中文,则需要用 u'字符串' 的方式来表示,否则会失败。并且这个代码文件需要保存为 UTF-8 格式。
posted on 2006-12-03 18:00 NeilChen 阅读(2207) 评论(17) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义