如何在脚本标记之外获取javascript变量的值?

如何在脚本标记之外获取javascript变量的值?,javascript,jquery,Javascript,Jquery,我的脚本标签中有一个javascript变量,我正试图将它发送到另一个javascript文件 <script> $( document ).ready(function() { $('#target-group').click(function() { var targetGroups = $("input:checkbox:checked", ".actors-$i").map(function() {

我的脚本标签中有一个javascript变量,我正试图将它发送到另一个javascript文件

<script>
    $( document ).ready(function() {
        $('#target-group').click(function() {
            var targetGroups = $("input:checkbox:checked", ".actors-$i").map(function() {
                return $(this).val();
            }).get();

            $('#out').append(targetGroups.join(','));
        });
    });
</script>

$(文档).ready(函数(){
$(“#目标群体”)。单击(函数(){
var targetGroups=$(“输入:复选框:选中“,”.actors-$i”).map(函数(){
返回$(this.val();
}).get();
$('#out').append(targetGroups.join(',');
});
});
我尝试使用
并在另一个javascript函数中使用它。但它似乎不起作用

尝试在输入元素上使用
.val()
,因为输入元素是无效元素。里面不能有任何东西

 $('#out').val(targetGroups.join(','));

如果要附加值,请尝试以下操作

$('#out').val( $('#out').val() + targetGroups.join(','));
两件事:

1) 第二个元素选择器中有
$
。使用任何元字符

( such as  !"#$%&'()*+,./:;<=>?@[\]^`{|}~ )

您可以将该值存储在本地存储器中

localStorage.setItem('value',targetGroups.join(',')

您可以通过以下方式访问它:


var val=localStorage.getItem('value')

您只需要从另一个脚本访问变量,对吗?通过将变量的范围设置为全局,可以轻松实现这一点。为此,请删除使变量成为局部变量的
var
关键字,或者,如果希望更明确,请将其设置为
窗口
对象,如下所示:

window.targetGroups = .....

不能对输入使用
append()
。请尝试改用
after()
。所有脚本都具有相同的作用域,它们没有分离。我仍然无法使用脚本标记之外的targetGroups。请检查更新的代码。定义变量
targetGroups
由于globalI没有尝试等待值,我正在尝试访问脚本tagI之外的变量,我将其更改为window.targetGroups=$(“输入:复选框:选中“,”.actors-$I”).map(函数(){return$(this.val();}).get()$('#out').val(window.targetGroups.join(',');但是我仍然得到未捕获的引用错误:尝试从不同的javascript文件访问时未定义targetGroups您能否确认:1)第二个脚本在同一页中2)第二个脚本在第一个脚本之后加载?进一步:您可以发布$(“输入:复选框:选中“,”.actors-$i”).map(函数(){return$(this.val();}).get()的结果吗;这样我们就可以检查它是否被定义了?不,它是一个不同的javascript文件。好的,但是两个脚本都包含在同一个HTML页面中吗?
window.targetGroups = .....