在回调中从代码后面更改javascript变量

时间:2013-01-11 21:47:12

标签: javascript asp.net

好的,所以我现在已经在这个上旋转了很长一段时间了,像往常一样,我确信这是一个非常简单的解决方案,所以这里......

我需要使用代码隐藏文件中的变量设置javascript变量。通常,我这样做:

var Test = <%= TestVar%>

在正常页面加载时,这种方法(尽管可能不是最好的方法)对我来说很有用。我现在遇到的问题是,我需要使用回调/更新面板更改回调变量。我所拥有的是变量是在页眉中的javascript块中设置的,然后我调用一个函数来利用回调面板的EndCallback事件中的变量。

var Var1 = <%= Var1%>;
function endCallback()
{
    //some action with Var1;
}

一切都很好,除了没有重新加载服务器标签(因为我没有做整页回发)。是否有更好的方法来更新部分回发上的javascript变量?

1 个答案:

答案 0 :(得分:0)

如果要更改服务器变量,则需要ajax调用。 使用jquery或其他方法。 在服务器端,您需要创建一个方法,也许是一个Web服务。然后从客户端调用它来发送新值。

客户方:

$.ajax({
   url: "(webservice url)",
   data:(parameters if needed),
   success:function(response){
        variable = response;
   }
});

服务器端:

[WebMethod()]
public object GetValue(object param1){
   ...
   return new_value;
}