将一个C#变量添加到javascript中

Sea*_*y84 2 .net c#

我的标题中有以下代码块:

 <script type="text/javascript">
        $(document).ready(function () {
            $('#target').readmytweet({
                'color': 'black',
                'search': 'from:' + <%= GetUserName() %>,
                'user': <%= GetUserName() %>,
                'width': 600,
                'tweets': 10,
                'speed': 25
            });
        })
    </script>

protected string GetUsername()
        {
            return "somestring..";
        }
Run Code Online (Sandbox Code Playgroud)

但是,我收到一条错误消息:

无法修改Controls集合,因为控件包含代码块(即<%...%>).

有谁知道如何将我的代码中的C#变量传递给这个jQuery函数而不会出现这个错误?

提前致谢

Rio*_*ams 6

对于动态字符串:

看起来它会起作用,尝试用引号包装代码块,如下:

'<%= GetUserName() %>'
Run Code Online (Sandbox Code Playgroud)

您也可能必须使用this语句来访问该方法:

'<%= this.GetUserName() %>'
Run Code Online (Sandbox Code Playgroud)

对于静态字符串:

在aspx页面中将您的字符串声明为公共字符串:

public string UserName = "somestring..";
Run Code Online (Sandbox Code Playgroud)

并通过以下方式访问:

var userName = <%=this.UserName%>;
Run Code Online (Sandbox Code Playgroud)