いくつかのチェックボックスがある単純な HTML フォームがあります。ここでの私の目標は、このデータ (チェック ボックスの値) を jQuery 関数に渡し、Ajax 経由で PHP スクリプトに渡される文字列に値を入力することです。ここに私のhtmlがあります:
<table class="ui-widget-content" border="0" style="width: 100%;">
<tr>
<td width="252px;">PVC's Required</td>
<td align="left">
<input type="checkbox" id="pvc" name="pvc" value="abc" />abc<br />
<input type="checkbox" id="pvc" name="pvc" value="def" />def<br />
<input type="checkbox" id="pvc" name="pvc" value="ghi" />ghi<br />
<input type="checkbox" id="pvc" name="pvc" value="jkl" />jkl<br />
<input type="checkbox" id="pvc" name="pvc" value="NONE" />NONE<br />
</td>
</tr>
</table>
jQuery:
$("#addTechDetails")
.button()
.click(function(){
var pvc = $("#input[ type= 'checkbox']");
var pvcData = [];
pvc.filter(':checked').each(function(){
pvcData.push($(this).val());
})
pvc=pvcData.join(',');
//initial info required to process form
var newOrExisting = $("#newOrExisting").val();
var numCircuits = $("#numCircuits").val();
var str = "newOrExisting="+newOrExisting+"&numCircuits="+numCircuits+"&pvc="+pvc;
//ajax request
$.ajax({
type : "POST",
cache : false,
url : "ajax/addTechDetails.php",
data : str,
complete : function(xhr, result){
if (result != "success") return;
var response = xhr.responseText;
$("#result").html(response);
}
})
});
上記の出力は、いくつかの選択がチェックされている場合でも次のようになります: '','','','',