标签: webforms

ASP.NET 向导后退按钮不起作用

我有一个 ASP.NET 向导运行我的购物车结帐过程。我刚刚在我的第二步中添加了一个 Paypal Express 结账链接。Paypal 流程将用户带离页面,然后在完成后将他们重定向回我的向导。当用户从 Paypal 返回以将向导设置为第 3 步时,我正在使用 Request.QueryString 解析 HTTP 参数。这加载得很好,但是当我单击(向导的)后退按钮时,它会进行回发,但是停留在第 3 步。有人能想出一个原因吗?它引用的链接仍然具有 HTTP 参数,但我在根据参数以编程方式设置向导步骤之前检查回发。有人对这个有经验么?

asp.net webforms paypal wizard

1
推荐指数
1
解决办法
1669
查看次数

ASP.NET Webforms UpdatePanel 重复内容

我接到了一个巨大的 Webforms 项目,我试图理解它,但我遇到了一个问题,即更新面板复制了很多内容。面板的 aspx 代码很大,有数百行,但它基本上看起来像这个简单的例子,只有更多asp:TextBoxasp:ListBox.

<asp:UpdatePanel runat="server" ChildrenAsTriggers="true" RenderMode="Block" UpdateMode="Conditional">
            <ContentTemplate>
                <div><table><tbody><tr><td>
                <label>Search</label><asp:TextBox ID="Search" runat="server"  />
                <asp:LinkButton runat="server" OnClick="find_Click" >Find</asp:LinkButton>
                </td></tr></tbody></table></div>
                <div id="a"><table><tbody><tr><td>
                <label>Result</label><asp:TextBox ID="Result" runat="server" />
                </td></tr></tbody></table></div>       
            </ContentTemplate>
        </asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)

和这样的代码。

public void find_Click(Object sender, EventArgs e)
{
    Result.Text = "oranges";
}
Run Code Online (Sandbox Code Playgroud)

当您单击 LinkBut​​ton 时,我希望在结果中看到该<div id="a">部分,但在 TextBox 中看到文本“oranges”。你实际得到的是<div id="a">“橙子”,然后是<div id="a">带有空文本框的原始文本。最糟糕的一点是,它没有做,在这个简单的例子,甚至也不是在一个页面中,我创建了所有原始asp:TextBoxasp:ListBox,但以虚拟数据填充。任何人都可以指出我解决这个问题的任何好方法吗?

asp.net updatepanel webforms

1
推荐指数
1
解决办法
4384
查看次数

当“onsubmit”事件调用 Javascript 函数时,asp.net 表单未提交

情况是:

我想在提交表单时禁用页面上的所有控件(可能使用覆盖的 div),以便用户无法单击其他按钮,直到页面仍在处理回发。因此,我使用表单的onsubmit事件来调用执行相同操作的 Javascript 函数。但是现在正在调用该函数,但根本没有发布该表单。我什至尝试过,使用return true;作为我的 JavaScript 函数的最后一行,但仍然没有发布表单。
这是我的 Javascript 函数:

function DoThis() 
    {
        alert('this form is about to be submitted...');
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

这是我的表单标签:

<form id="form1" runat="server" onsubmit="DoThis();">
Run Code Online (Sandbox Code Playgroud)

这里有什么问题?另外,让我知道是否有其他方法可以满足我的目的?

编辑:我在这里不是指 ajax 调用,因为updatepanels已经有启用此行为的功能。我希望整个页面都具有此功能,即使单击更新面板外的按钮导致完整回发,而不仅仅是用于 ajax 调用(因为用户通常有足够的时间点击 2 或 3 个按钮,到页面被重定向或重新加载)。

javascript asp.net webforms dom-events

1
推荐指数
1
解决办法
2万
查看次数

如何在c#中向SQLDataSource添加更新参数

关于我的问题,

如何获得边界值,或者我完全错了?

我正在尝试使用 c# 而不是 ASP.NET 向 SQLDataSource 添加更新参数,但出现错误,

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
    int userID = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Values["userID"].ToString());
    string userName = "";
    string city = "";
    string updateStatement = "Update myTable set userName=@userName, city=@city where userID=@userID";

    foreach (DictionaryEntry entry in e.NewValues)
    {
        if (entry.Key == "userName")
            userName = entry.Value.ToString();
        if (entry.Key == "city")
            city = entry.Value.ToString();
    }

    using (SqlDataSource ds = new SqlDataSource(ConnectionString(), updateStatement))
    {
       ds.UpdateParameters.Add("@userName");  
        ds.UpdateParameters.Add("@city");
       ds.UpdateParameters.Add("@UserId");
    }

    gvDetails.EditIndex = -1;
    BindData();
}
Run Code Online (Sandbox Code Playgroud)

如何传递参数值:S

ds.UpdateParameters.Add("@userName");  
        ds.UpdateParameters.Add("@city");
       ds.UpdateParameters.Add("@UserId"); …
Run Code Online (Sandbox Code Playgroud)

c# gridview webforms sqldataadapter

1
推荐指数
1
解决办法
6867
查看次数

在 ASP.NET Web 窗体中禁用 &lt;asp:TextBox /&gt;

我在 VB.NET 中构建的 ASP.NET WebForms 应用程序中工作。

根据当前登录用户的角色,我想禁用文本框。所以如果他/她是角色 A 的一部分,那么他/她将能够编辑 TextBox 的内容,否则 TextBox 将被禁用。

<asp:TextBox runat="server" 
             ID="txtResolution" 
             CssClass="newTextObject" 
             TextMode="MultiLine">
</asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

vb.net asp.net webforms

1
推荐指数
1
解决办法
3108
查看次数

ASP.Net 4.5 WebForms 返回重定向到 URL

有没有办法像在 MVC 中一样在 WebForms 中返回到 URL 的重定向。我有一个简单的函数,如果列表为空,则返回 null,如果列表中有项目,则返回列表。如果列表为空,我希望能够重定向到同一网站中的另一个页面。

这是函数

BillContext _context = new BillContext();

public List<Models.Bill> GetBills()
{
    var bills = from b in _context.Bills
                where b.UserName == HttpContext.Current.User.Identity.Name
                select b;

    if (bills.ToList().Count() < 1)
    {
        return null;
    }
    else
    {
        return bills.ToList();
    }
}
Run Code Online (Sandbox Code Playgroud)

我想返回这样的东西,而不是返回 null

return Response.Redirect("~bills/create
Run Code Online (Sandbox Code Playgroud)

但这不起作用,它给了我一条不会消失的红色波浪线。这是 VS2012 ASP.net WebForms 项目

asp.net webforms

1
推荐指数
1
解决办法
1万
查看次数

Runat ="server"在当前上下文中不存在

我有一个HiddenField1似乎并不当我运行的C#代码存在.

错误如下:

当前上下文中不存在名称"HiddenField1".

第54行的HiddenField1

对不起,我不知道为什么C#代码在网站上看起来像那样.

public partial class Login : System.Web.UI.Page
{
    protected void LoginButton_Click1(object sender, EventArgs e)
    {
        string userName1 = Login1.UserName;
        string userPassword1 = Login1.Password;
        bool logSuccess = false;

        foreach (GridViewRow gvRow in GridView1.Rows)
        {

            if (userName1 == gvRow.Cells[1].Text && userPassword1 == gvRow.Cells[2].Text)
            {
                Response.Write("Logged in");
                logSuccess = true;
                break;
            }
        }
        if (logSuccess == true)
        { Response.Redirect("~/MemberPages/Members.aspx"); }
        else
        { HiddenField1.Value = ""; }
    }
}
Run Code Online (Sandbox Code Playgroud)

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net webforms

1
推荐指数
1
解决办法
603
查看次数

在ASP.net中使用OnCLick的问题

这是我的.aspx文件后面的鳕鱼中的简单重定向功能

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}

protected void GoToClicked(object sender, EventArgs e)
{
    Response.Redirect("LoginPage.aspx");
}
}
Run Code Online (Sandbox Code Playgroud)

很基本的.

这是调用它的asp:LinkBut​​ton

<asp:LinkButton ID="LoginLink" runat="server" Text="Login" Font-Bold="true" OnClick="GoToClicked" ></asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)

每当我尝试构建时,我都会收到以下错误:

 Error  1   'GoToClicked' is not a member of 'ASP.default_aspx'.       C:\Users\urMom\Documents\Visual Studio 2013\WebSites\HW_2\Default.aspx   65  
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?我试过跟随:

而是使用Server.Transfer

将功能从受保护更改为公共

尝试使用和不使用id标记(包括大写和小写)

c# asp.net webforms

1
推荐指数
1
解决办法
44
查看次数

如何仅在特定查询字符串上显示div元素?

我想只在用户有一个查询字符串?mode=showdiv末尾的查询字符串时显示这个特定的div元素.否则,请勿显示此div.

最好的方法是什么?

这是我的div:

<div>
     <p class ="Call-Customer-Support">Call customer support at 555-555-5555.   </p>
     <div class="Rectangle">
     <img class="call icon-image" src="images/call.png" />
     <a class="Call-Support" href="tel:555-555-5555">Call Support</a>
     </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我正在使用ASP.NET Web表单.

javascript c# asp.net webforms

1
推荐指数
1
解决办法
110
查看次数

替换databinder.eval中的字符串

在我的.aspx代码中,我有以下元素

<asp:Image ID="GalleryImage" runat="server" ImageUrl='<%# Eval("ProductImage") %>'                                             />
Run Code Online (Sandbox Code Playgroud)

为此返回的值是来自内容传送网络的图像UR1,其具有样本URL 'http://cdn.xyz.com'

我想将网址转换为 'https://cdn.xyz.com'

我试着这样做ImageUrl='<%# Eval("ProductImage").Replace("http","https") %>'似乎不起作用.有任何想法吗?

c# asp.net webforms

1
推荐指数
1
解决办法
2591
查看次数