Jquery 访问';它在脚本之外

Jquery 访问';它在脚本之外,jquery,asp.net,asp.net-mvc,visual-studio-2013,bootcamp,Jquery,Asp.net,Asp.net Mvc,Visual Studio 2013,Bootcamp,我有以下代码,但无法从脚本中访问“myVariable”——我假设是因为它是一个函数,“myVariable”需要是一个全局变量。如何创建全局变量 (注意:这是Visual Studio中ASP.NET MVC项目中的.cshtml文件) <!DOCTYPE html> <html> <head> </head> <body> @{var myVariable = "this is what I want to access

我有以下代码,但无法从脚本中访问“myVariable”——我假设是因为它是一个函数,“myVariable”需要是一个全局变量。如何创建全局变量

(注意:这是Visual Studio中ASP.NET MVC项目中的.cshtml文件)

<!DOCTYPE html>
<html>
<head>
</head>
<body>

    @{var myVariable = "this is what I want to access and change later in the script";}

<div class="navbar navbar-inverse navbar-fixed-top">
    <div class="container">
        <div class="navbar-header">
  ...
        </div>
    </div>
</div>

<script>
    $('[name="optradio1"]').on('change', function () {
        $('#accordion-second').slideToggle();
        $('#accordion-first').slideToggle();
        alert(myVariable);
    })
</script>
</body>
</html>

@{var myVariable=“这是我以后在脚本中要访问和更改的内容”;}
...
$('[name=“optradio1”]')。在('change',函数(){
$(“#手风琴秒”).slideToggle();
$(“#手风琴优先”).slideToggle();
警报(myVariable);
})

您可以使用数据属性:

<script id="myScript" data-myvar="@myVariable">
    $('[name="optradio1"]').on('change', function () {
        $('#accordion-second').slideToggle();
        $('#accordion-first').slideToggle();
        alert($('#myScript').data('myvar'));
    });
</script>

$('[name=“optradio1”]')。在('change',函数(){
$(“#手风琴秒”).slideToggle();
$(“#手风琴优先”).slideToggle();
警报($('myScript')。数据('myvar');
});

通常放在HTML内容标签上,因为您通常已经有一些唯一的标识符或类,但您也可以放在脚本标签上。

请更改为
警报(myVariable)

请使用下面的代码,而不是使用该代码

       var val = parseInt('@myVariable') + 5;
        alert(val);

试试这个。

如果我想用@myVariable添加一些值,那么我该如何实现呢?例如,myVariable=myVariable+5如果它是use full,只需单击0前面的向上箭头即可将答案标记为正确,该箭头位于我的类代码菜单的左侧。谢谢@Aravindan,但不幸的是,由于某种原因,这不起作用——此外,我的变量是字符串,而不是整数。我尝试了
var val=toString('@myVariable')data-myvar2=@myVariable2
,我可以在脚本中设置一个等于另一个吗?因为我喜欢使用数据属性,因为它们看起来类似于传入变量,但不确定如何将一个设置为另一个<代码>$('myScript')。数据('myvar')=$('myScript')。数据('myvar2')
不起作用……别提第二个问题@TimVermaelen——我可以通过jQueryAPI文档找到答案。以下工作正常:
$('myScript').data('myvar',$('myScript').data('myvar2')