禁用图像按钮上的回发单击asp

时间:2014-02-09 04:31:30

标签: c# javascript asp.net

我的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>

JS source

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();");
    }

我的代码正常工作,图像显示在我选择图像后但几秒后图像丢失,因为页面重新加载。

2 个答案:

答案 0 :(得分:2)

我解决了我的问题。

只需添加return false;

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

答案 1 :(得分:1)

请参阅此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>