我的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();");
}
我的代码正常工作,图像显示在我选择图像后但几秒后图像丢失,因为页面重新加载。
答案 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>