调用不使用';不能从JavaScript返回任何内容
考虑以下代码: 在我的.ascx中调用不使用';不能从JavaScript返回任何内容,javascript,c#,ajax,Javascript,C#,Ajax,考虑以下代码: 在我的.ascx中 <a id="1" onclick="registerLastViewed(this.id);">Example</a> <asp:HiddenField id="hdID" runat="server" /> <script type="text/javascript> function registerLastViewed(ID) { document.getElementById(
<a id="1" onclick="registerLastViewed(this.id);">Example</a>
<asp:HiddenField id="hdID" runat="server" />
<script type="text/javascript>
function registerLastViewed(ID) {
document.getElementById('<%= hdID.ClientID %>').value = ID;
"<%= RegisterLastViewed() %>"; //dies here
}
</script>
基本上,我计划做的是:
单击
将调用Javascript函数,该函数将从代码隐藏中调用我的C#函数
但每次我试图进入这一页,它就消失了。重定向循环和模具
有没有不使用webmethod
的方法可以做到这一点
作为参考,这运行良好:
<script type="text/javascript">
var usr = "<%=getUserId() %>";
</script>
public string getUserId() {
string userId = "";
if (Session[PropertiesKey.SessionKeys.UserObjLoginUser] != null)
{
UserMaster loginUser = (UserMaster)Session[PropertiesKey.SessionKeys.UserObjLoginUser];
userId = loginUser.UserID;
}
return userId;
}
var usr=“”;
公共字符串getUserId(){
字符串userId=“”;
if(会话[PropertiesKey.SessionKeys.UserObjLoginUser]!=null)
{
UserMaster loginUser=(UserMaster)会话[PropertiesKey.SessionKeys.UserObjLoginUser];
userId=logiuser.userId;
}
返回用户标识;
}
在页面加载过程中都会调用这两个函数。“有没有不使用webmethod
的方法可以做到这一点?”因此您知道webmethod
——为什么不使用它呢?C#是服务器上的进程,Javascript在客户端上运行。他们无法按照您期望的方式进行沟通
<script type="text/javascript">
var usr = "<%=getUserId() %>";
</script>
public string getUserId() {
string userId = "";
if (Session[PropertiesKey.SessionKeys.UserObjLoginUser] != null)
{
UserMaster loginUser = (UserMaster)Session[PropertiesKey.SessionKeys.UserObjLoginUser];
userId = loginUser.UserID;
}
return userId;
}