动态设置锚标记后出现jQuery错误

时间:2016-12-08 17:29:21

标签: javascript jquery

我试图通过编写这段代码来使用jquery设置锚标记的href属性:

 myPage.URL != null ? $pages.find("#myPage").attr("href", myPage.URL.Url) : $pages.find("#myPage").attr("href", "#") ;

其中myPage对象包含名为URL 2属性的对象:Url和Description。如果URL不为null,那么肯定它将具有Url值。

运行此代码后,我尝试点击该链接,但它发出此错误:

  

jquery-1.11.3.min.js:2未捕获错误:语法错误,无法识别的表达式:http://yourlink.com(...)

此处的myPage对象结构:

 pageType : "publishing",
 pageCategory: null 
 Steps : null
 pageOwner: null 
 audience: "All"
 audienceDescription: "description goes here for the audience"
 Title : "my page title"
 URL : Object
    > Description "any link goes here" 
    > Url "http://google.com"

我做错了什么?

感谢。

1 个答案:

答案 0 :(得分:0)

您还需要检查对象myPage.URL是否具有属性Url然后分配它:

if( myPage.URL != null )
     if( myPage.URL.hasOwnProperty("Url") )
           $pages.find("#myPage").attr("href", myPage.URL.Url);
     else
           $pages.find("#myPage").attr("href", "#")

希望这有帮助。