部門ドロップダウン ボックスの onchange() イベントは、AJAX メソッドを受け取り、JSON オブジェクトを返します (JSON には LIST が含まれます)。
このページの js メソッドの書き方:
ここで返されるデータにはリストが含まれています (以下のリストを参照)。このリストには、個人のコードと個人の名前という 2 つの属性が含まれています。次に、最初に人事ドロップダウン ボックスを empty() し、選択コントロールの追加メソッドを通じて新しいドロップダウン ボックス要素を追加します。
バックエンドコード:
コードをコピー
コードは次のとおりです:
public StringDepartmentChangeEvent() throws Exception{
userList=service.queryForList("Workorder.queryUserByDepartmentCode",DepartmentCode);
if(userList!=null&&userList.size()>0)
{
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=utf-8");
response.setHeader("Pragma","キャッシュなし");
response.setHeader("Cache-Control","no-cache");
response.setHeader("Cache-Control", "no-store");
PrintWriter ライター = 応答.getWriter();
JSONObject json = new JSONObject();
Map map = new HashMap();
map.put("list",userList);
JSONObject jso = JSONObject.fromObject (map);
writer.write(jso.toString());
writer.flush();
writer.close(); }
null を返します。
}
このメソッドは部門切り替えイベントであり、部門コード(フィールドフィールド、有セット、get) によって要求された現在の部門のユーザーが userList に追加されます。
その後、標準の書き込み法によって userList が、KEY がリストである適切な HashMap に配置されます。
JSONObject jso = JSONObject.fromObject(map);
これは最も重要な手順であり、ある json オブジェクトの作成メソッドは JSONObject jso = new JSONObject() とすることもでき、その後、リスト内の記述を jso に挿入します。
ここでは実行できず、フロント台が返すのは文字列です。。。
struts で返される型は json