从后面的代码传递变量在Firefox中不起作用

时间:2012-03-01 22:45:55

标签: javascript variables code-behind

我成功地能够将代码隐藏的变量传递给IE中的javascript,但不能在firefox中传递。 我所做的是在我的代码后面有这些公共变量: public string passedVar =“”; 并将其分配给页面加载事件中的值: passedVar =“在代码背后”;

然后在aspx页面中,在脚本块中,我这样做: var clientVar =“<%= passedVar%>”;

然后我能够在该页面的其他js文件中访问它就好了......仅在IE中使用!

如果我使用的是javascript;但是,.js中的变量显示为“未定义”

我可以找到像hiddenfield这样的替代值,但我想知道为什么这不应该像它应该的那样工作!

谢谢你!

1 个答案:

答案 0 :(得分:0)

如果您需要通过Javascript处理数据,请执行ajax调用(同步或异步)到空的.aspx页面(我的意思是仅代码隐藏),获取成功事件的数据结果并处理回调中的数据功能。 一些代码基于JQuery samples

$.ajax({
  type: "POST",
  url: "http://myDomain/myPage.aspx",
  data: "par1=val1&par2=val2",
  async: false,
  success: function( data ) {
       /*
        * data contains the myPage.aspx response
        * it could be a single value or a comma-separated list of values
        * initialize passedVar or whatever
        */
});