您的位置:首页 > Web前端 > JavaScript

Ajax控件之异步上传图片

2008-03-28 15:12 387 查看
    有一次在群里聊天,大家都在讨论Ajax能上传图片吗?讨论的很激烈。当然是分成两派,有的人说不行,有的人说行。我是属于旁观者,因为我也不知道行还是不行从没有做过。我想只有自己尝试过才能知道行和不行。最近正好也在开发一套图书管理系统。正好尝试一次到底看看行不行。下面是我用Ajax控件做的一个上传图书封面的部分代码与大家一起分享。希望对大家有用。
Image_Save.cs
[AjaxPro.AjaxMethod]
    public int Change_Image(string file,int bookid)
    {
     
           string filepath = file;
           FileStream fileStream = new FileStream(file, FileMode.Open, FileAccess.Read);
           Byte[] CharImgContent = new byte[0];
           BinaryReader br = new BinaryReader(fileStream);
           br.BaseStream.Seek(0, SeekOrigin.Begin);
           CharImgContent = br.ReadBytes((int)br.BaseStream.Length);
           SqlConnection my_imgcn = SqlHelper.CreateConnect();
           SqlParameter[] dlistimg ={
              new SqlParameter("@pic",SqlDbType.Image),
              new SqlParameter("@bookid",SqlDbType.Int),
              new SqlParameter("@ret",SqlDbType.Int)
           };
           dlistimg[0].Value = CharImgContent;
           dlistimg[1].Value = bookid;
           dlistimg[2].Direction = ParameterDirection.Output;
           SqlHelper.ExecRunProce("", my_imgcn, dlistimg);
           int intRet = Convert.ToInt32(dlistimg[2].Value);
            if (intRet == 0)
            {
                return 0;

            }
            else
            {
                return 1;
            }
      
    }
javascript
  function iamge_visible()
    {
        var div_img=document.getElementById("div_img");
        var file1=document.getElementById("File_Upload");
        var img_1=document.getElementById("img_pic");
        var div_status=document.getElementById("div_status");
        var lb_error=document.getElementById("lb_error");
        var img_pic=document.getElementById("img_status");
        var hid_bookid=document.getElementById("hid_bookid");
        div_img.style.visibility="visible";
        img_1.src=file1.value;
        status();
        Admin_bookLiulanProp.Change_Image(file1.value,hid_bookid.value,iamge_visible_callbak);
    }
    function status()
    {
        div_status.style.visibility="visible";
        img_pic.src="../images/loading.gif";
        lb_error.innerHTML="正在加载...";     
    }
    function iamge_visible_callbak(res)
    {
        if(res.value==0)
        {
            //alert('成功!');
          div_status.style.visibility="visible";
          img_pic.src="../images/true.jpg";
          lb_error.innerHTML="更改成功!";
        }
        else
        {
           // alert('失败');
          div_status.style.visibility="visible";
          img_pic.src="../images/false.jpg";
          lb_error.innerHTML="更改成功!";
         // lb_error.value="更改失败!";
        }
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息