- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我发现我的 javascript 和页面隐藏代码之间存在一些奇怪的交互。这是页面:
<form name="form1" id="form1" runat="server">
<button onclick="submitForm()">Submit Form</button>
<asp:LinkButton runat="server" OnClick="btn_download">Download!</asp:LinkButton>
</form>
<script type="text/javascript">
function submitForm()
{
document.form1.submit();
}
</script>
以及背后的代码:
protected void btn_download(object sender, EventArgs e)
{
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", String.Concat("attachment; filename=", "download.txt"));
string hw = "hello world!";
byte[] info = new byte[hw.Length * sizeof(char)];
System.Buffer.BlockCopy(hw.ToCharArray(), 0, info, 0, info.Length);
Response.OutputStream.Write(info, 0, info.Length);
Response.Flush();
Response.End();
}
当我点击下载按钮时,我得到了预期的文件。点击下载后,如果我点击提交表单按钮,表单将被提交,但它也会像下载被按下一样 - 触发 btn_download 方法。如果我注释掉 btn_download(..) 中的代码,这不会发生。
如果我在点击下载按钮之前点击了提交表单按钮,它不会触发 btn_download。我试着逐行注释掉后面的代码,似乎是 Response.appendHeader(..) 行导致了这个问题。有人可以解释这里发生了什么吗?为什么 form1.submit() 就像我点击下载一样?
最佳答案
对于 ASP.NET 网络表单,您应该避免使用 form.submit()
提交表单。相反,您应该调用 __doPostback
传递触发回发的控件的名称。否则,您将混淆 ASP.NET 基础结构,该基础结构确定是哪个按钮或事件触发了表单的提交。
从服务器的 Angular 来看,除了检查隐藏的表单变量“EVENTTARGET”外,ASP.NET 不知道表单是如何提交的(无论是通过按钮还是通过您的 Javascript 代码)。当您首先单击下载按钮时, doPostBack
填充事件目标,然后提交表单;如果您随后直接调用 submit
,事件目标字段中仍有一个值是 doPostBack
调用留下的。结果,ASP.NET 认为您再次单击了下载按钮。
有关详细信息,请参阅 Article: How to use doPostBack
关于javascript - 在 linkbutton 回发后提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39007108/
我有这个 ASP.NET 代码: Accept Deny 由于某些原因,元素不在同一行。 我无法在 jsFiddle 中向您展示它,因为它不支持 ASP.NET。 如何修复它,使其
我试图避免双击,即第一次点击可以通过 javascript 函数禁用 asp: LinkButton,所有这些都在 aspx 页面中. 我在前端方面经验不多,如果你能支持我,我会感谢你。 我尝试简
我在我的应用程序中使用 JSF。我在通过 ace linkButton 显示数据时遇到运行时错误。 我收到的错误是:未捕获类型错误:无法读取未定义的属性“linkButton” 由于此链接未启
每当我点击链接按钮时,我都会收到下面屏幕截图中的错误。 注意:我没有使用任何更新面板与页面。 HTML Submit 有人可以帮我解决这个问题吗? 最佳答案 据我在图片中看到的,您正在尝试访问 th
但出于某种原因,当我点击按钮时没有任何反应,如果我删除更新面板按钮工作
我有一个关于 asp 的问题:我有一个从服务器返回到我的网页的 ID 列表。我可以在 asp.net 控件下将其返回到 div 中吗? : div_containing_link += " " 如果没
我发现我的 javascript 和页面隐藏代码之间存在一些奇怪的交互。这是页面: Submit Form Download! function submitForm()
我在 GridView 的 TemplateField 内的 ItemTemplate 内使用 ASP:LinkButton。对于链接按钮的命令参数,我想从 gridview 绑定(bind)的数
我有一个调用模式弹出窗口的链接按钮,当单击链接按钮时,我想获取数据 ID 并将其分配给隐藏字段 这是我的链接按钮 ' data-id='' data-toggle="modal" data-targ
我们如何以编程方式在 asp:linkButton Click 事件上打开新窗口。在我的程序中有一个文本框(名为:txtUrl)和linkButton(或按钮)。在链接按钮上,单击“我需要从文
到目前为止,我一直在使用 VS 2003,最近迁移到 VS 2008。我面临着一些特殊的问题。 在 Vs 2003 中,我有一个 Datagrid,其中一个字段是 ButtonField(链接按钮)。
我在 gridview 控件中使用 linkbutton。我想将数据打开到新选项卡中。我尝试设置 target="_blank"。但它不起作用。我试过这样做。这是我的源代码: " CommandNam
我有这个 JS 函数,每当页面加载时就会加载: window.onload = function () { 如何通过单击 asp:LinkButto
' PostBa
我有asp:LinkButton,输入按钮定义为: View Office Pdf LinkButton 最初在代码隐藏中被禁用,如下所示: if (!IsPostBack)
我正在寻找一种方法来单击 使用 jQuery。我也在使用 ,带有“是/否”选项,因此如果用户单击"is",则会触发一个 javascript 函数 OnOk() ,必须单击页面上的“保存”按钮,但目前
我使用下面的代码在 div 中显示 linkbutton,当它点击时应该转到该链接。这对我来说不正确。我尝试了下面的代码。只需检查并告诉我哪里错了。当用户回答任何问题时,它在这个站点上运行良好,我们将
我正在使用 asp.net 框架 3.5 和 c# 2.0。我能够将数据绑定(bind)到 gridview 中。实际上我想在asp:linkButton上的鼠标悬停事件上显示图像,该图像在 Gr
我有这个 asp 控件: 如何更改文本大小和粗体以显示类似于此图像的 X 文本: 最佳答案 asp:linkbutton 呈现为 标记,因此请编写一些 CSS 以它为目标并根据需要设置样式。 例如,
我有一个链接按钮: " /> 在后面的代码中,我添加了一个 onclick处理程序在 Page_Load像这样: LinkButtonPrint.Attributes["on
我是一名优秀的程序员,十分优秀!