有关AJAX的简单问题...

chenghp 2006-10-23 09:53:10
WebForm1这个页面中的html代码如下:就三个控件
<INPUT id="uid" type="text">
<INPUT id="pwd" type="text">
<INPUT type="button" value="Button" onclick="getpwd()">

我要用AJAX,第一在web.config中添加
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory,eAjax" />
</httpHandlers>

第二在页面中加JS
<script language="javascript">
function getpwd()
{
document.all.pwd.value = WebForm1.GetPwd(document.all.uid.value);
}
</script>


第三在CS中写下如下代码:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面

Ajax.Utility.RegisterTypeForAjax(typeof(WebForm1));
}

[Ajax.AjaxMethod()]
public string GetPwd(string UID)
{
return "fdsafdsafdsa";
}
按理说,我现在在UID这个HTML控件中输入内容,PWD这个控件就应该显示的是fdsafdsafdsa,可显示的却是[object Object],无论你输入什么.为什么?



分不够了,不好意思!
...全文
255 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
gogo11223 2006-10-23
  • 打赏
  • 举报
回复
我试了是这样的,能解决吗?
yunxiao_2004 2006-10-23
  • 打赏
  • 举报
回复
你的文件框是不是先闪一下显示[object Object],再显示fdsafdsafdsa??
yunxiao_2004 2006-10-23
  • 打赏
  • 举报
回复
ajax 函数返回就是这样的方式,这就是ajax 异步的作用.
而不是像我们普通函数一样直接对document.all.uid.value赋值.
chenghp 2006-10-23
  • 打赏
  • 举报
回复
这是什么意思???用你这个方法是可行的!但,是什么原因呢???

还有就是,那个文件框会先闪一下[object Object],然后在显示的是fdsafdsafdsa,这又是为什么呢?
yunxiao_2004 2006-10-23
  • 打赏
  • 举报
回复
返回的方式利用异步的方式
function GetPwd_CallBack(response)
{
document.all.pwd.value = response.value;
}
点击按钮的这样调用异步事件
<script language="javascript">
function getpwd()
{
WebForm1.GetPwd(document.all.uid.value,GetPwd_CallBack);
}
</script>
yunxiao_2004 2006-10-23
  • 打赏
  • 举报
回复
哦,对,呵呵
chenghp 2006-10-23
  • 打赏
  • 举报
回复
嗯,你的方法是对的,能解决问题,谢谢!

另一个方法也可以

<script language="javascript">
function getpwd()
{
document.all.pwd.value = WebForm1.GetPwd(document.all.uid.value).value;
}
</script>
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2006-10-23 09:53
社区公告

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

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