我試圖使用json第一次使用$ .ajax()我將複選框和其他所需數據的值賦給了一個php文件處理和張貼到mysqldb通過$ .ajax()函數的數據部分的數組,但會在我的PHP文件中獲得一個空數組[]。當我嘗試使用從我的瀏覽器的JavaScript調試工具,我得到了reprot
**Uncaught SyntaxError: Unexpected end of input jquery-1.9.0.min.js:1
st.extend.parseJSON jquery-1.9.0.min.js:1
(anonymous function) index.php?url=account/registration/:297
st.event.dispatch jquery-1.9.0.min.js:2
y.handle**
我在我的PHP處理文件製作看起來像這樣在控制檯日誌
[checkbox1: "COM 101", semester: "1st Semester", mid: "7", checkbox2: "COM 112", checkbox3: "STA 111"…]
checkbox1: "COM 101"
checkbox2: "COM 112"
checkbox3: "STA 111"
checkbox4: "STA 112"
checkbox5: "MTH 111"
length: 0
mid: "7"
semester: "1st Semester"
陣列我做的JSON的print_r數據,但得到的Array []作爲結果
這是我的JavaScript代碼塊「myDataArray是一個全局變量」
$('#mytable2').on('change',function(e){
var rel = e.target.getAttribute('rel');
console.log(e.target.value+ " "+ e.target.checked)
if(rel === globals.payment_target && e.target.checked===true){
myDataArray[e.target.getAttribute("name")]= e.target.value;
myDataArray["semester"] = $("#semester").val()
myDataArray["mid"] = $("#mid").val()
}
if(rel === globals.payment_target && e.target.checked ===false){
delete myDataArray[e.target.getAttribute("name")]
console.log(myDataArray)
}
});
$('#mytable2').on('click',function(e){
var rel = e.target.getAttribute('rel');
console.log(e.target.value+ " "+ e.target.getAttribute('name'))
if(rel === globals.payment_target && e.target.value =="Register"){
console.log(myDataArray)
var jsonstring = $.parseJSON(myDataArray);
var myglob =JSON.stringify(globals)
console.log(myglob)
$.ajax({url:'courseregistration.php', type:'POST',data:{data:jsonstring},success: function(result){
$('#putmehere').html("<h4 style='text-align:center'>"+result+"</h4>")
alert(result)
}
})
}
});
這個PHP文件是什麼樣子
$data = json_decode($_POST['data']);
print_r($data);
我只是想不通的問題是什麼。有人可以告訴我什麼是錯的方式,我正在做或建議更好的方式
我得到了最新版本的jquery,並替換了我正在使用的一個,但仍然得到了第一個列表的相同錯誤,正如您指出的那樣 –
您使用了哪些其他jQuery插件,因爲這些可能會導致問題。 – jeff
我正在使用基礎框架與它javascripts。我刪除了這個--- $ .parseJSON(myDataArray)---並且錯誤沒有再來,我用JSON.stringify代替。我也宣佈myDataArray作爲一個對象,而不是一個數組,事情進展順利!謝謝 –