1. 程式人生 > >Uncaught SyntaxError: Unexpected end of input (jquery)

Uncaught SyntaxError: Unexpected end of input (jquery)

jQuery函式傳值問題

有時候會遇到以下問題:
Uncaught SyntaxError: Unexpected end of input

這個是因為你傳入的引數中,包含了空格或者其他jquery不支援的符號,包括空格等等,需要先將這些常見字元替換掉。

function makeColBtn(data){
   var openStatus = data.openStatus;

    var str = "";
    var openStatusToStr = "";
    if (Number(openStatus) == 1) {
        openStatusToStr =
'<button type="button" onclick="closeJoin(' + JSON.stringify(data.joinGroupNo).replace(/"/g, '&quot;') + ')" class="btn btn-danger btn-sm">關閉拼團</button>'; } else if (Number(openStatus) == 0) { openStatusToStr = '<button type="button" onclick="" class="btn disabled btn-sm">已關閉</button>'
; } str = openStatusToStr + '&nbsp;&nbsp;<button type="button" onclick="toHandleRemark(this)" class="btn btn-info btn-sm">備註</button>'; return str; } //關閉拼團 function closeJoin(joinGroupNo) { var text = "確認關閉拼團嗎?"; wybc.alert({ text: text }, function
($modal) { $.ajax({ url:'join/u_join_open_status', type:'post', data:{ joinGroupNo: joinGroupNo, openStatus: 0 // 0:關閉 }, success: function(res){ if (res.code) { return; } $modal.modal('hide'); // 重新整理 $datatable.ajax.reload(); } }); }); }

需要將

JSON.stringify(data.joinGroupNo)

改為

JSON.stringify(data.joinGroupNo).replace(/"/g, '&quot;')