【问题标题】:Disable postback on image button click asp禁用图像按钮上的回发单击 asp
【发布时间】:2014-02-09 04:31:30
【问题描述】:

我的 asp 项目中有一个图像按钮,用于浏览图像并显示。我正在为我的项目使用脚本。

这是我的代码:

ASPX:

<asp:Panel ID="stage" runat="server" cssClass="containment-wrapper" style="border:1px solid #000000;">
         <asp:ImageButton ID="imgBrowse" runat="server" Height="375px" Width="640px" src="#" />
         <input type='file' id="inpUploader" style="visibility: hidden;"/>
</asp:Panel>

JSsource:

function readURL(input) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();

        reader.onload = function (e) {
            $('#imgBrowse').attr('src', e.target.result);
        }

        reader.readAsDataURL(input.files[0]);
    }
}

$("#inpUploader").change(function () {
    readURL(this);
});

CS:

protected void Page_Load(object sender, EventArgs e)
    {
        imgBrowse.Attributes.Add("onclick", "document.getElementById('inpUploader').click();");
    }

我的代码正在运行,并且在我选择图像后会显示图像,但几秒钟后图像会因为页面重新加载而丢失。

【问题讨论】:

  • 不要使用图片按钮。使用普通客户端&lt;img&gt; 元素,并仅在客户端分配srcclick 事件。无需涉及服务器端回发

标签: c# javascript asp.net


【解决方案1】:

我解决了我的问题。

只需添加return false;

 protected void Page_Load(object sender, EventArgs e)
    {
        imgBrowse.Attributes.Add("onclick", "document.getElementById('inpUploader').click(); return false;");
    }

【讨论】:

  • 这对我有用。这是另一个使用图像输入的示例:
【解决方案2】:

看到这个sample

<asp:Button runat="server" Text="Button" UseSubmitBehavior="false" OnClientClick="alert('my client script here');my" />

<script type="text/javascript">

function my__doPostBack(eventTarget, eventArgument) {
    //Just swallow the click without postback of the form
}
</script>

【讨论】:

    猜你喜欢
    • 2012-03-29
    • 2011-11-24
    • 2012-02-11
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多