2012-03-21 163 views
0

以下是我无法正常工作的脚本。 它的目的是检查复选框是否被选中,然后调用第二 例程响应,依赖于将selectedIndex(SINDEX)被证明当什么我原来叫脚本如何将变量从一个脚本传递到另一个脚本

<script type="text/javascript"> 
function checkB(ctrl,sindex) { //get the state of the check box 
var sindex = { 
    0: 0, 
    1: 1, 
    2: 2, 
    3: 3 
}; 


if (ctrl.checked == true) { 
return function(which) { 
replaceContentmainobjectOn(sindex [which]); 
} else {  
if (ctrl.checked == false) { 
replaceContentmainobjectOff(); 
} 
} 
} 
</script> 

这里那个叫

var replaceContentmainobjectOn =(function() { 
var info = { 
    0: 2, 
    1: 1, 
    2: 2, 
    3: 3 
}; 

    return function(which) { 
    document.getElementById('ecwid-productoption-8840317-mainobject').selectedIndex = (info[ which ]) ; 
}; 

}()) 

这第二个脚本是什么我打电话的第一个例程与

onclick="checkB(this,sindex); 
+0

你能用http://jsfiddle.net这样的工具提供你的问题的完整工作演示吗?另外你为什么要返回'函数'对象? – mellamokb 2012-03-21 18:41:12

+1

您发布的第一个脚本无效。 – CAbbott 2012-03-21 18:44:30

+0

这里的耳朵非常潮湿.. 我需要能够提供VAR信息的第二个例程,当我从第一个来电时。你是怎样做的?全局变量.... 作为一个noobie这是非常困惑 – 2012-03-21 19:05:09

回答

2

两个独立的<script>块共享相同的执行范围,即全局范围。在另一个<script>内的全局范围内创建的所有变量都可以访问。

<script> 
    var a = 5; 
</script> 

<script> 
    alert(a); 
</script> 

同样适用于功能。

<script> 
    var b = function(c){ return c; } 
</script> 

<script> 
    alert(b(12)); 
</script> 

你可以排除,你的问题似乎在第一个脚本,这不是语法上有效。

+0

谢谢..这就是我想弄清楚... 也许我可以开发一个例程,将利用这个概念.. – 2012-03-23 02:07:34

相关问题