-1

我在 masterpage 中定义了一个全局 javascript 函数

母版页

<script>
if(typeof data !='undefined'){
function doSmth{
if(data[A])
//Do something
}
}
</script>

主页

<script>
var data = {
Fruit : "apple"
}
</script>

细节

var data is not defined in this page

在我添加 typeof data !='undefined' 之前,一切正常,我可以在主页上调用苹果,但我从详细信息中收到了一个 javascript 错误,因为数据未定义,为了防止继续接收 javascript 错误,我添加了 typeof data !='undefined ',但不知何故整个功能不起作用,为什么会发生这种情况?

4

3 回答 3

1

在您的母版页中尝试此操作

<script>
function doSmth{
if(typeof data !='undefined' && data[A])
//Do something
}
</script>
于 2013-09-04T09:09:04.603 回答
0

MasterPage将您的脚本更改为

<script>
    function doSmth(){
        if(typeof data !== 'undefined'){
            if(data[A]){
            //Do something
            }
        }
    }
</script>

理想情况下,您应该将参数传递给函数,而不是使用全局变量。所以我建议你使用

<script>
    function doSmth(data){
        if(typeof data !='undefined'){
            if(data[A]){
            //Do something
            }
        }
    }
</script>

并调用函数

<script>
    var data = {
       Fruit : "apple"
    }
         doSmth(data);
</script>
于 2013-09-04T09:10:27.303 回答
0

尝试这个:

<script>

function doSmth{
   if(data !=undefined){
      //Do something
   }
}
</script>
于 2013-09-04T09:21:44.160 回答