私が持っている問題を経由して、アクションクラスを支柱ために配列を送信する方法どのようにStrutsアクションクラスで受信するにはAJAX呼び出しを介して、個々の配列としてアクションクラスをストラットする配列としてストラットイテレータで反復される動的データを送信するために、AJAX
ここは私のサンプルコードです:
ストラットの反復
<table width="100%" class="table table-striped table-bordered table-hover" id="dataTables-example3">
<thead>
<tr>
<th><a href="#" id="selectall">Select all</a></th>
<th>Student Name</th>
<th>Phone</th>
<th>Email</th>
<th>ReferenceId</th>
</tr>
</thead>
<tbody>
<s:iterator value="adminSms">
<tr>
<td><s:checkbox name="refIDS" cssClass="case" fieldValue="%{ref}" /></td>
<td><s:property value="studentname" /></td>
<td id="phone"><s:property value="phone" /></td>
<td id="email"><s:property value="email" /></td>
<td><s:property value="ref" /></td>
</tr>
</s:iterator>
</tbody>
</table>
Ajax呼び出し
2つのフィールドの値を送信するために$(document).ready(function() {
$('Send').click(function() {
var Data = {
phone : $('#phone').val(),
email : $('#email').val()
}
$.ajax({
type : 'POST',
url : 'myURL',
data : JSON.stringify(Data)
});
});
});
Actionクラスここでは以下のコードで
public class MyActionClass extends ActionSupport {
private String [] phoneNumbers;
private String [] emails;
public String[] getPhoneNumbers() {
return phoneNumbers;
}
public void setPhoneNumbers(String[] phoneNumbers) {
this.phoneNumbers = phoneNumbers;
}
public String[] getEmails() {
return emails;
}
public void setEmails(String[] emails) {
this.emails = emails;
}
@Override
public String execute() throws Exception {
for (int i = 0; i < emails.length; i++) {
System.out.println(emails[i]);
}
for (int i = 0; i < phoneNumbers.length; i++) {
System.out.println(phoneNumbers[i]);
}
return SUCCESS;
}
}
あなたはAjaxを介して、それを送ることができます。 –
ちょうどidを送信し、実際にオブジェクトを取得します。 –
'$( 'Send')'に 'Send'とは何ですか?あなたは何を達成しようとしていますか?なぜIDだけを送信しないのですか? –