【问题标题】:submit a form with AjaxToolkit?使用 AjaxToolkit 提交表单?
【发布时间】:2011-05-05 22:33:39
【问题描述】:

我们可以在 ASP.NET 中使用 AjaxToolkit 提交表单吗?

例如:
在我们的表格下面:

<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
</asp:ToolkitScriptManager>
<div id="mainDiv">
<table style="width: 40%;" cellspacing="3" cellpadding="3">
<tr>
    <td>
        <asp:RequiredFieldValidator ID="RequiredFieldValidatorUsername" runat="server" ErrorMessage="*"
            SetFocusOnError="True" Text="*" ControlToValidate="TextBoxUsername" 
            ValidationGroup="login"></asp:RequiredFieldValidator>
        <asp:TextBox ID="TextBoxUsername" runat="server"></asp:TextBox>
    </td>
    <td align="left">
        : UserName
    </td>
</tr>
<tr>
    <td>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*"
            SetFocusOnError="True" Text="*" ControlToValidate="TextBoxPass" 
            ValidationGroup="login"></asp:RequiredFieldValidator>
        <asp:TextBox ID="TextBoxPass" runat="server" TextMode="Password"></asp:TextBox>
    </td>
    <td align="left">
        : Pass
    </td>
</tr>
<tr>
    <td colspan="2">
        <asp:Button ID="ButtonSubmit" runat="server" Text="Login" 
            ValidationGroup="login"/>
    </td>
</tr>
<tr>
    <td colspan="2">
        &nbsp;
    </td>
</tr>
<tr>
    <td colspan="2">
        <asp:Label ID="LabelResult" runat="server" Text="Label"></asp:Label>
    </td>
</tr>

</table>
</div>
</form>

我想用 Ajax 登录一个用户,所以我必须发送用户名并传递给 Webservice 并获得结果并在 LabelResult 中显示结果。
我们可以在ASP.Net 中使用AjaxToolkit 吗?

【问题讨论】:

  • AJAX 是围绕“部分回发”(或回调)的目标构建的,该目标是某个元素“小于”(或在某些情况下“不同于”)整个表单。如果您想提交表单,这就是回发的用途。您能否更具体地说明为什么要在这种情况下使用 AJAX?
  • 我想用 Ajax 登录用户只是为了学习,我知道我可以使用 post back 但我想用 Ajax 找到解决方案

标签: c# .net asp.net ajax


【解决方案1】:

我将 ajax 用于级联下拉菜单集,但我不知道如何将表单的内容提交给控制器。我认为这是一个相关的问题,因为我所做的是生成一个隐藏的 ajax 控件,该控件在表单中最终 ajax 控件的值发生变化时触发。然后,控件触发的 Web 服务将所有表单信息保存到数据库中,此时提交按钮对用户来说更像是一种舒适的装饰。一旦用户提交表单,这些值就可以在数据库的元数据字段中使用,并且提交处理程序访问这些值而不是从回发中读取它们。

我这样做是因为它最终比学习我需要的内容更快,以便使用 java 脚本或其他一些从回发中检索的方法从回发中读取它们,所以我不会声称这是最好的方法,但它有效为了我。希望这对您有所帮助。

D.A.P.

【讨论】:

    【解决方案2】:

    对于 AJAX 脚本管理器必须出现在表单之前,我认为这是不可能的,而且 Cos Callis 说的很好 "如果你想提交表单,这就是回发的目的"

    【讨论】:

      【解决方案3】:

      所以,如果我们想使用 Ajax 向服务器发送表单,我们必须使用 JQuery 之类的东西,而使用 AjaxControlToolkit 则无法做到。

      【讨论】:

        猜你喜欢
        • 2010-09-23
        • 2016-01-09
        • 2018-12-29
        • 2012-02-10
        • 1970-01-01
        • 2017-12-23
        • 2016-11-04
        • 2012-04-20
        • 2013-03-13
        相关资源
        最近更新 更多