ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery Ajax Post コールバック関数が実行されない場合はどうすればよいですか?
コールバックの JSON データ形式の問題により、コールバック関数を実行できません。jQuery Ajax Post コールバック関数が実行できない場合の解決策: JSON データには二重引用符を使用し、エスケープ文字を使用してください。エスケープ文字列。コードは [ {\"hello\":\"world\"}] です。
このチュートリアルの動作環境: Windows7 システム、jquery3.2.1 バージョン、DELL G3 コンピューターこの方法は、すべてのブランドのコンピューターに適しています。
#推奨: jquery ビデオ チュートリアル
##jQuery Ajax Post コールバック関数が実行されない場合の解決策:1. フロントエンド コード
$.post('${pageContext.request.contextPath}/user_deleteUser',{uid:row.uid},function(result){ if (result.errorMsg){ $.messager.show({ title: 'Error', msg: result.errorMsg }); } else { $('#dg').datagrid('reload'); } },'json');
2. バックエンド コード
public String deleteUser() { int count = userDao.deleteUser(model.getUid()); try { PrintWriter writer = response.getWriter(); if(count<=0) writer.write("{'errorMsg':'删除失败'}"); else writer.write("{'success':'删除成功'}"); } catch (IOException e) { e.printStackTrace(); } return null; }
フロントエンド コードには明らかに何も問題はなく、問題もないようです。バックエンド コードに論理的な問題がありました。最終的に Baidu は、コールバックの JSON データ形式に問題があり、そのためにコールバック関数が実行できなくなったことを知りました。JSON データには二重引用符を使用する必要があることが判明しました。
我的:{'hello':'world'} 标准:{"hello":"world"}
文字列はネストされた二重引用符で使用できないため、エスケープ文字を使用できます
{\"hello\":\"world\"}
これで完了です。
関連する無料学習の推奨事項:
以上がjQuery Ajax Post コールバック関数が実行されない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。