未定义Javascript函数GetChatURL

未定义Javascript函数GetChatURL,javascript,Javascript,所以这些定义问题通常与语法有关,但我没有看到语法错误。我的问题是,当我在加载时定义函数时,为什么不定义它 我正在尝试更改此链接的onclick事件,以打开一个URL,其中包含一些在运行时之前没有的值。下面的所有代码都包含在body标签中 这是HTML <a id ="chaturl" style="position: fixed; top: 55%; right: 0; height: auto;" href="http://someurl" target="_blank" onclick

所以这些定义问题通常与语法有关,但我没有看到语法错误。我的问题是,当我在加载时定义函数时,为什么不定义它

我正在尝试更改此链接的onclick事件,以打开一个URL,其中包含一些在运行时之前没有的值。下面的所有代码都包含在body标签中

这是HTML

<a id ="chaturl" style="position: fixed; top: 55%; right: 0; height: auto;" href="http://someurl" target="_blank" onclick="GetChatURL()"><img alt="Chat" src="~/Content/images/check.png" border="0"></a>
这是JS

<script type="text/javascript">
window.onload = function () {
    document.getElementById("chaturl").onclick = function GetChatURL() {
        var firstName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.FirstName));
        var lastName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.LastName));
        var email = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.Email));
        var phone = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.PhoneNumber));
        return "window.open(http://someurl/chat.aspx?firstname=" + firstName + "&lastname=" + lastName + "&email=" + email + "&phonenumber=" + phone + ", 'Chat', 'toolbar=no,location=no,directories=no,menubar=no,status=no,scrollbars=no,resizable=yes,replace=no');this.newWindow.focus();this.newWindow.opener=window;return false;";
    }
}
</script>

window.onload=函数(){
document.getElementById(“chaturl”).onclick=函数GetChatURL(){
var firstName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.firstName));
var lastName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.lastName));
var email=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.email));
var phone=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.PhoneNumber));
return“window.open”(http://someurl/chat.aspx?firstname=“+firstName+”&lastname=“+lastname+”&email=“+email+”&phonenumber=“+phone+”,“聊天”,“工具栏=否,位置=否,目录=否,菜单栏=否,状态=否,滚动条=否,可调整大小=是,替换=否”);this.newWindow.focus();this.newWindow.opener=窗口;返回false;”;
}
}

首先,函数不应返回URL,而应打开URL

此外,不需要调用GetChatURL函数。 改变

或者,您可以单独定义函数,然后需要将其更改为:

document.getElementById("chaturl").onclick = GetChatURL;
然后定义函数:

function GetChatURL() {
    var firstName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.FirstName));
    var lastName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.LastName));
    var email = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.Email));
    var phone = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.PhoneNumber));
    window.open("<url>")
}
函数GetChatURL(){ var firstName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.firstName)); var lastName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.lastName)); var email=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.email)); var phone=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.PhoneNumber)); 窗口。打开(“”) }
首先,函数不应返回URL,而应打开URL

此外,不需要调用GetChatURL函数。 改变

或者,您可以单独定义函数,然后需要将其更改为:

document.getElementById("chaturl").onclick = GetChatURL;
然后定义函数:

function GetChatURL() {
    var firstName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.FirstName));
    var lastName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.LastName));
    var email = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.Email));
    var phone = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.PhoneNumber));
    window.open("<url>")
}
函数GetChatURL(){ var firstName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.firstName)); var lastName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.lastName)); var email=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.email)); var phone=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.PhoneNumber)); 窗口。打开(“”) }
首先,函数不应返回URL,而应打开URL

此外,不需要调用GetChatURL函数。 改变

或者,您可以单独定义函数,然后需要将其更改为:

document.getElementById("chaturl").onclick = GetChatURL;
然后定义函数:

function GetChatURL() {
    var firstName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.FirstName));
    var lastName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.LastName));
    var email = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.Email));
    var phone = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.PhoneNumber));
    window.open("<url>")
}
函数GetChatURL(){ var firstName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.firstName)); var lastName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.lastName)); var email=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.email)); var phone=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.PhoneNumber)); 窗口。打开(“”) }
首先,函数不应返回URL,而应打开URL

此外,不需要调用GetChatURL函数。 改变

或者,您可以单独定义函数,然后需要将其更改为:

document.getElementById("chaturl").onclick = GetChatURL;
然后定义函数:

function GetChatURL() {
    var firstName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.FirstName));
    var lastName = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.LastName));
    var email = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.Email));
    var phone = @(System.Web.HttpUtility.UrlEncode((User as OneStop.Core.Entities.Principal).User.PhoneNumber));
    window.open("<url>")
}
函数GetChatURL(){ var firstName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.firstName)); var lastName=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.lastName)); var email=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.email)); var phone=@(System.Web.HttpUtility.UrlEncode((用户为OneStop.Core.Entities.Principal.User.PhoneNumber)); 窗口。打开(“”) }