如何使用C从ascx代码中调用javascript函数#
我想在用户单击登录按钮时调用login.ascx文件中的javascript函数如何使用C从ascx代码中调用javascript函数#,javascript,c#,jquery,asp.net,dotnetnuke,Javascript,C#,Jquery,Asp.net,Dotnetnuke,我想在用户单击登录按钮时调用login.ascx文件中的javascript函数 function myTestFun() { //var _currentUser = // DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo(); var userName = '<%=username%>'; var fname = '<%=firstnm
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
以下是login.ascx代码:
<div class="dnnFormItem">
<asp:label id="lblLogin" runat="server" AssociatedControlID="cmdLogin" CssClass="dnnFormLabel" />
<asp:LinkButton id="cmdLogin" resourcekey="cmdLogin" cssclass="dnnPrimaryAction" text="Login" runat="server"/>
<script type="text/javascript">
/*globals jQuery, window, Sys */
(function ($, Sys) {
function setUpLogin() {
var actionLinks = $("a[id$=cmdLogin]");
actionLinks.click(function () {
if ($(this).hasClass("dnnDisabledAction")) {
return false;
}
actionLinks.addClass("dnnDisabledAction");
});
}
$(document).ready(function () {
setUpLogin();
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function () {
setUpLogin();
});
});
}(jQuery, window.Sys));
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
/*全局jQuery、窗口、系统*/
(函数($,Sys){
函数setUpLogin(){
var actionLinks=$([id$=cmdLogin]);
操作链接。单击(函数(){
if($(this).hasClass(“DNNDisableAction”)){
返回false;
}
actionLinks.addClass(“dndisabledaction”);
});
}
$(文档).ready(函数(){
setUpLogin();
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(函数(){
setUpLogin();
});
});
}(jQuery,window.Sys));
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
下面是login.ascx中的javascript代码,我想在用户单击login按钮时调用它。
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
函数myTestFun(){
//var\u currentUser=
//DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var用户名=“”;
var fname='';
var userinfo={
“Usr_用户名”:用户名,
“Usr_电子邮件”:“,
“Usr_名字”:fname
};
setItem('GoDashProUser',JSON.stringify(GoDashProUser));
}
下面是使用C#的代码隐藏文件:
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
private void OnLoginClick(对象发送方,事件参数e)
{
ClientScriptManager cs=Page.ClientScript;
if(loginStatus==UserLoginStatus.LOGIN\u USERNOTAPPROVED)
{
message=“UserNotAuthorized”;
}
其他的
{
已验证=(loginStatus!=UserLoginStatus.LOGIN\u失败);
}
//引发UserAuthenticated事件
var eventArgs=new UserAuthenticatedEventArgs(objUser,txtextername.Text,loginStatus,“DNN”)
{
已验证=已验证,
消息=消息,
};
//string script=“myTestFun();”;
//RegisterClientScriptBlock(this.GetType(),“myscript”,script);
//RegisterStartupScript(GetType(),“myTestFun”,“myTestFun();”,true);
//Page.ClientScript.RegisterStartupScript(this.GetType(),“Script”,“myTestFun()”,true);
ScriptManager.RegisterClientScriptBlock(this.Page,typeof(UpdatePanel),UniqueID,“myTestFun();”,true);
firstnm=objUser.FirstName;
OnUserAuthenticated(事件参数);
}
}
我尝试了大多数可能的选项来调用javascript函数,但它不会调用。我想调用javascript函数将数据保存到本地存储器中,还想传递userinfo的值
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
请给我一些建议。谢谢。
function myTestFun() {
//var _currentUser =
// DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
var userName = '<%=username%>';
var fname = '<%=firstnm%>';
var userinfo= {
"Usr_Username": userName,
"Usr_Email": "",
"Usr_FirstName": fname
};
localStorage.setItem('GoDashProUser', JSON.stringify(GoDashProUser));
}
</script>
<asp:LinkButton OnClientClick="myTestFun()" id="cmdLogin" resourcekey="cmdLogin" cssclass="dnnPrimaryAction" text="Login" runat="server"/>
您前面的问题有什么问题吗?它不工作,所以我需要相应地改变逻辑。我不知道这有什么错,但我知道这是最好的解决方案,为您的方法,请解释代码,而不是只张贴代码。