2015-09-20 86 views
-2

我收到以下錯誤給jQuery的語法錯誤

Uncaught SyntaxError: missing) after argument list 

對於這個jQuery在我的JSP,它使用它獲取轉換爲HTML一些支柱標籤,如下圖所示:

<script language="JavaScript" type="text/javascript"> 
    $(function(){ 
     var tbl = $("#table");  
     $("#addRowBtn").click(function(){ 
      $('<tr><td><arch:datePicker property="expirationDate" tabindex="${requestScope.tabIndex}" styleId="expirationDate" value="test" imageSrc="/image/content/calendar_icon.gif" alt="date picker" onchange="validateDateFormat(this);" /></td></tr>').appendTo(tbl); }); }); 
</script> 

其解析下面的HTML代碼:

<script language="JavaScript" type="text/javascript"> 
    $(function(){ 
     var tbl = $("#table");  
     $("#addRowBtn").click(function(){ 
      $('<tr><td><input id="expirationDate" name="expirationDate" onchange="validateDateFormat(this);" class="sspdatepicker" type="text" alt="date picker State the date in numeric format of MonthMonthDayDayYearYearYearYear. Do not state dashes or slashes. For Example, January 1st 2013 should be stated as 01012013." value="test" maxlength="10"/><a aria-describedby="date" href="#" class="accCalendar datePicker" id="dateIconexpirationDate"><img src="/COMETSHDPortalApp/image/content/calendar_icon.gif" id="expirationDate" alt="date picker" class="sspdatepicker" title="expirationDate Calendar" tabindex="0"/></a><script type="text/javascript"> $A.bind(window, 'load', function(){ $A.setCalendar("UniqueCalendarIdexpirationDate", $A.getEl("dateIconexpirationDate"),$A.getEl("expirationDate"), false, function(ev, dc, targ){targ.value = dc.range[dc.range.current.month].nameShort + '/' + dc.range.current.mDay + '/' + dc.range.current.year;dc.close(); targ.focus();},{className: 'calendar'});});</script></td></tr>').appendTo(tbl); }); }); 
</script> 

提前感謝您的幫助

回答

0

支撐生成的HTML塊很好。

你有單引號,第二個雙引號問題看起來像。您需要跳過另一個單引號內的單引號:嘗試以下版本的解析器:

$(function(){ 
     var tbl = $("#table");  
     $("#addRowBtn").click(function(){ 
      $('<tr><td><input id="expirationDate" name="expirationDate" onchange="validateDateFormat(this);" class="sspdatepicker" type="text" alt="date picker State the date in numeric format of MonthMonthDayDayYearYearYearYear. Do not state dashes or slashes. For Example, January 1st 2013 should be stated as 01012013." value="test" maxlength="10"/><a aria-describedby="date" href="#" class="accCalendar datePicker" id="dateIconexpirationDate"><img src="/COMETSHDPortalApp/image/content/calendar_icon.gif" id="expirationDate" alt="date picker" class="sspdatepicker" title="expirationDate Calendar" tabindex="0"/></a><script type="text/javascript"> $A.bind(window, \'load\', function(){ $A.setCalendar("UniqueCalendarIdexpirationDate", $A.getEl("dateIconexpirationDate"),$A.getEl("expirationDate"), false, function(ev, dc, targ){targ.value = dc.range[dc.range.current.month].nameShort + \'/\' + dc.range.current.mDay + \'/\' + dc.range.current.year;dc.close(); targ.focus();},{className: \'calendar\'});});</script></td></tr>').appendTo(tbl); }); }); 
+0

非常感謝,錯誤消失了,但日期日曆不起作用,當我點擊。 – mk1001

+0

請忽略我以前的評論。它沒有工作,現在我得到「未捕獲的SyntaxError:意外的令牌非法」後嘗試您的版本 – mk1001