简单的jQuery函数调用不起作用

时间:2017-06-22 13:44:17

标签: javascript jquery html

我的页面是;

  <div class="new-nav">
  </div>

我的jQuery代码是;

var div1 = "      
<div class=\"metro-nav-block nav-block-orange\">\n                    
    <a data-original-title=\"\" href=\"NotesMonitoring.aspx\">\n                        
        <i class=\"icon-phone\"></i>\n                        
        <div class=\"info\">
            <span data-bind=\"text: JSON.MonthMyCall\"></span> / 
            <span data-bind=\"text: JSON.MonthCallGoal\"></span>
        </div>                  \n                        
        <div class=\"status\">Benim Aradığım</div>\n                    
    </a>\n                
</div>"
var dv = $(div1).appendTo(".new-nav");

但是当我打开页面时,它会给出错误;

未捕获错误:语法错误,无法识别的表达式:

  • 在Function.st.error(jquery-1.9.1.min.js:3)
  • at ft(jquery-1.9.1.min.js:3)
  • at wt(jquery-1.9.1.min.js:3)
  • 在Function.st [as find](jquery-1.9.1.min.js:3)
  • 在init.find(jquery-1.9.1.min.js:3)
  • 在init(jquery-1.9.1.min.js:2)
  • at b(jquery-1.9.1.min.js:2)

我只是尝试了 $(div1),它也犯了同样的错误。

但是当我尝试使用jQuery 1.8.3时,它可以工作。这是jQuery 1.9.1的问题吗? jQuery 1.8.3

jQuery 1.9.1

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您没有正确处理转义字符。当您拥有""属性时,它实际上会关闭并再次打开,这是不完整的。将其写为

var div1 = '<a data-original-title="" href="NotesMonitoring.aspx">Notes</a>'

OR

var div1 = "<a data-original-title=\"\" href=\"NotesMonitoring.aspx\">Notes</a>"

工作代码段

var div1 = "<a data-original-title=\"\" href=\"NotesMonitoring.aspx \">Notes</a>";
var dv = $(div1).appendTo(".new-nav");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="new-nav">
</div>

答案 1 :(得分:0)

引用问题并缺少;

更改

var div1 = "<a data-original-title="" href="NotesMonitoring.aspx">Notes</a>"

收件人:

var div1 = "<a data-original-title='' href='NotesMonitoring.aspx'>Notes</a>";

答案 2 :(得分:0)

您在双引号中嵌套双引号。在内部使用单引号或使用\"转义嵌套的双引号。

var div1 = "<a data-original-title='' href='NotesMonitoring.aspx'>Notes</a>"
var dv = $(div1).appendTo(".new-nav");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="new-nav">
  </div>