【问题标题】:Pass additional information back through postback通过回发传回附加信息
【发布时间】:2012-02-07 14:25:07
【问题描述】:

在 ASP.net 中使用 JQuery 时遇到问题。我有一个 HTML img、一个 asp:Button 和一个 asp:FileUpload

<img src="images/12345.png" data-id="12345" />
<asp:FileUpload ID="fup" runat="server" />
<asp:Button ID="btn" runat="server" />

我正在尝试从 HTML img 传回图片 ID。知道如何将数据元素推送到 CommandArgument 或其他东西吗?

我不能让 HTML 图像 runat="server",因为我在客户端动态设置它。

插件

我尝试使用插件,但并没有按照我的计划进行:

这个需要多个文件,我需要将其限制为一个。不需要它支持拖动或任何花哨的东西。 http://valums.com/ajax-upload/

Uploadify 使用 Flash,试图避开它。 http://www.uploadify.com/

这个使用了一些丑陋的 iframe 之类的东西,看起来不太好。此外,网站上的拼写错误有点令人反感。 http://www.phpletter.com/Demo/AjaxFileUpload-Demo/

如果有人有办法按照我的要求进行操作,或者有一种巧妙的方式来上传新图片(支持其他参数),我们将不胜感激。

解决方案 感谢您的回答,我最终将两者结合起来并使用在服务器上运行的asp:HiddenField

标记:

<img id="img" src="images/12345.png" data-id="12345" />
<asp:HiddenField id="hfData" runat="server" />
<asp:FileUpload ID="fup" runat="server" />
<asp:Button ID="btn" runat="server" />

JQuery:

$("#<%= hfData.ClientID %>").val($("#img").data("id"));

代码隐藏:

string pictureID = hfData.Value;

【问题讨论】:

    标签: jquery asp.net postback image-uploading


    【解决方案1】:

    如果我对您的理解正确,您可以使用&lt;input type="hidden" name="data-id" value="12345" /&gt; 来获取您正在寻找的data-id

    【讨论】:

    • 如果输入:hidden 是asp:HiddenField 则有效。如果不在服务器上运行,则无效。
    • 您也可以在input标签上添加runat=server
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-10
    • 1970-01-01
    相关资源
    最近更新 更多