2012-05-14 64 views
0

我正在使用FileTree JQuery组件将目录选择传递到页面。我使用HTTPGet来传递选定的文件并将其捕获在Page_Load上(到目前为止,太棒了!)。JQuery HTTPGet和页面刷新ASP.NET

在此之后,我想对页面和“刷新”控件进行一些更改。

这样做的最佳方法是什么?

Thx!

jQuery函数:

function LoadImages(file) { 
    var param = { 
     "Action": "LoadImages", 
     "file": escape(file) 
    }; 

    $.getJSON("SomePage.aspx", param); 
} 

代码隐藏(aspx.cs)

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     if (QueryString.Current.Get(Constants.HTTPGet.Action) == Constants.HTTPGet.LoadImages) 
     { 
      DoSomethingWithFile(Request["file"]); 
      divAnything.Visible= true; 
     } 
    } 
} 
+1

你是什么意思的“刷新”控件? – ericosg

+0

在我的代码后面,我绑定了一个.net控件。我需要展示这个变化。 – rGiosa

+0

是否在提供数据源后调用了DataBind()? – ericosg

回答

0

当页面是不是一个回你的代码运行。

尝试将支票外的代码段考虑在内,并查看这是否是您的问题。 (理想情况下,您可以使用断点检查,如果您的代码正在访问)。

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     //keep this block for future use 
    } 

    if (QueryString.Current.Get(Constants.HTTPGet.Action) == Constants.HTTPGet.LoadImages) 
    { 
     divAnything.Visible= true; 
    } 
} 

一定要记住,如果你在你的页面的操作,你需要的ASP.NET引擎来处理它,你需要将信息发送回去。 在javascript中,您可以强制回发调用表单的提交方法,或使用具有回发事件的控件进行回调。

即在JavaScript中。

document.forms["myform"].submit(); 

即在jQuery中。

$('#myForm').submit(); 
+0

Thx!我用submit()+ hidden字段替换了GET。 – rGiosa