1

我将以下代码段绑定到提交按钮

            var formData = $(this).serialize();  
            console.log(formData);
            $.ajax({
                url: 'event_crud.php',
                type: "POST",
                dataType: 'text',
                data: formData,
                success: function(data) {   
                    $.mobile.changePage($("#events"));
                    console.log("Data: "+data+"\n Rebuild the list");
                    update(fromDate, toDate, eventList);    
                    $("ul#event-list").listview("refresh");
                },
                error: function(data) {
                    alert("Whoops! Update event failed! "+data);
                }
            });

当提交的表单中的文本字段包含右括号 - 即“)”时,我的 js 控制台中出现错误 - 请注意,我没有得到左括号的异常,并且在哪里都没有关系在文本字段中 ) 出现(不需要在最后)

这是序列化表单数据的示例

action=update&eventID=416&type=expense&description=Shopping+)&date=2013-10-17&value=350.0000

这是错误

Uncaught Error: Syntax error, unrecognized expression: ]&date=2013-10-17&value=350.0000')

请注意,右括号已序列化为方括号。FWIW,错误参考是 jquery-1.7.1.min.js:3

我也尝试过像这样对输入进行编码

formData = encodeURIComponent(formData);

没有成功。

奇怪的是,AJAX POST 似乎成功完成(数据库已更新),但 changePage 操作从未​​执行。

4

0 回答 0