html 标签 加runat="server" 后,无法使用后台变量问题

后台

protect string n="1";

前台

<a href="javascript:;" onclick="a('<%=n%>'))"  runat="server"></a>

问题:页面运行时将n 变量当字符串处理,显示为:<a href="javascript:;" onclick="a('<%=n%>')"  runat="server"></a>

解答:runat="server" 后 该标签变成了服务器标签,不能使用'<%=%>' 进行绑定,该绑定只适合于非服务 html 标签

可以用一下方法

<a href="javascript:;" onclick="b();"  runat="server"></a>

<script>

function b(){

a('<%=n%>');

}

</script>

如果有一些初始化的参数:可以使用jquery,在页面加载的时候调用jquery函数 进行初始化

,如果初始化时需要一些数据从后台获取,则需要将这些参数定义成protected 全局变量;

原文地址:https://www.cnblogs.com/lwy1103/p/6134590.html