日期:2014-05-18  浏览次数:20570 次

在后台代码中如何获取javascript方法的返回值?
function   GetFileName(upload)
{
        var   fileName   =   document.getElementById(upload).value;
        return   fileName;
}
</script>
<asp:FileUpload   ID= "fuImage "   runat= "server "   />
<asp:Button   ID= "btnUpLoad "
        runat= "server "   CausesValidation= "False "   OnClick= "btnUpLoad_Click "   Text= "上传 "   />
我想在后台的btnUpLoad_Click事件中调用GetFileName()方法来获取fuImage控件的值,并把获取的值在后台进行处理。
请问我该怎么做呢?

没有做过,请不要回帖,谢谢!

------解决方案--------------------
可以用AjaxPro.dll做

function GetFileName(upload)
{
var fileName = document.getElementById(upload).value;
var ok= MyAjax.Add(filename);
}


cs文件里:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

[AjaxPro.AjaxNamespace( "MyAjax ")]
public partial class MyTest: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(MyTest));
}

}

[AjaxPro.AjaxMethod]
public bool Add(string fname)
{
//code
}
}
------解决方案--------------------
把document.getElementById(upload).value等于一个Hidden
后台用的时间取Hidden的值
------解决方案--------------------
把返回值付给一个隐藏得控件 ,然后取空间的值不行嘛
------解决方案--------------------
估计指定不行觉得FileUpload不是之传一个文件名就ok的,应该是一种数据流吧?
即使传到后台一个字符串,可以上传,但是你看看上传的文件,估计就是一个具有名字的文件,不是原文件