0

次のコードがありますが、スクリプト内から「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>
4

2 に答える 2

1

データ属性を使用できます。

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

通常、一意の識別子またはクラスが既にあるため、通常は HTML コンテンツ タグを付けますが、スクリプト タグでも同様に行うことができます。

于 2014-12-26T02:09:34.880 に答える
1

のように変更してくださいalert(myVariable);

それを使用する代わりに、以下のコードを使用してください。

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

これを試してみてください。

于 2014-12-26T06:19:23.510 に答える