2014-02-21 62 views
0

我從ajax響應中獲得了arraylist。在通過ArrayList獲取ajax的響應後,如何將值分配給textboxjjsp在從ajax得到響應後迭代arraylist值

while(rs1.next()) 
{ 
      pabean.setAge(rs1.getString("patient_age")); 
      pabean.setDalerg(rs1.getString("patient_drug_allergies")); 
      pabean.setPmhistory(rs1.getString("patient_past_medical_history")); 
      pabean.setDiet(rs1.getString("patient_diet")); 
      pabean.setFhistory(rs1.getString("patient_family_history")); 
      pabean.setTobbaco(rs1.getString("patient_smoke")); 
      pabean.setDhistory(rs1.getString("patient_drug_history")); 
      pabean.setAlco(rs1.getString("patient_alcohol")); 
      pabean.setSleep(rs1.getString("patient_sleep")); 
      pabean.setGhistory(rs1.getString("patient_ob_gyn_history")    
      pabean.setPatient_details_id(rs1.getInt("patient_details_id")); 
      //uid = rs.getInt("patient_details_id"); 

} 
      addressLists1.add(pabean); 
      session.setAttribute("pagup", addressLists1); 
      out.println(addressLists1); 
+0

尊敬的Rushant Patel..Can您可以幫助我們理解您的問題,發佈一點您的代碼? –

+0

我得到了ajax的響應arraylist對象,但我怎樣才能將它的值分配給文本框而不刷新頁面? –

+0

你可以把你的反應? – yashhy

回答

0

你說你從ajax調用中獲得這個值。

請記住,您不能在ajax響應中獲取java對象。因爲調用是javascript的一部分,而javascript無法訪問java對象。

就像你打印arraylist的方式一樣out.println(addressList1);它打印爲[[email protected]]它只是addressList1對象的一個​​字符串表示,它不起任何作用。

你在JSP編寫的代碼一樣

<輸入型的第二件事= 「文本」 ID = 「txtage」 NAME = 「txtage」 佔位符= 「年齡」 級= 「表單控制」 值=」 < %= padetail.get(0).getAge()%>「>

so <%= padetail.get(0).getAge()%>是一個java代碼,當您需要頁面甚至在阿賈克斯電話進行之前。

你可以試試這個 -

,如果你想打印在jsp年齡只是打印上的servlet像

通過out.println(padetail.get(0).getAge());

所以現在在ajax響應中你會得到這個年齡。

現在你可以把這個響應值放在jquery所需的輸入中,像$('#txtage')。val(responseData);

如果你想要在jsp上響應ajax的整個列表,最好使用json使用任何json庫(如google gson或json.org),並創建json數組而不是arraylist,然後將mime類型設置爲「application/json「,然後使用out.print() 將其打印出來之後,您可以在ajax成功調用中解析此json並以任何您想要的方式使用。

+0

問題上沒有jQuery標籤,所以你真的需要說清楚'$('#txtage').val(responseData);'是jQuery代碼,因此不會工作,除非他們加載jQuery他們的頁面也是如此。常規的JavaScript替代工作正常:'document.getElementById('txtage')。value = responseData;'。 –

+0

@AnthonyGrist謝謝您指出錯誤。 –