我使用codeigniter和jquery
例如,如果输入#1被选中,我必须获取输入#menu-1的值
如果输入#2被选中,我得到输入#menu-2的值…
即使所有内容都经过检查,
我试过的
<form id="form">
<h2 class="text-uppercase font-weight-light">votre choix : </h2>
<div class="flex-row">
<input type="checkBox" id="1">
<label for="menu-1">item 1<span class="font-weight-bold">($500 )</span> x
</label>
<input id="menu-1" type="number" class="min" maxlength="2" value="1">
</div>
<div class="flex-row">
<input type="checkBox" id="2">
<label for="menu-2">item 2<span class="font-weight-bold">(2500 FCFA)</span> x
</label>
<input id="menu-2" type="number" class="min" maxlength="2" value="0">
</div>
<button id="next-1" type="submit" class="btn border border-secondary p-2">COMMANDER</button>
</form>
我努力了 :
$('#next-1').click(function (e) {
e.preventDefault();
var form = $("#form").serialize();
$.ajax({
url: '<?PHP echo base_url("index.PHP/user/process") ?>'
method: 'POST',data: form,dataType: 'json',success: function (reponse) {
}
});
});
我的控制器:
public function process()
{
if ($this->input->is_ajax_request()) {
$data = $this->input->post();
echo json_encode($data);
}
}
但我没有价值,所以行不通
最佳答案
因为您在输入中缺少名称属性.尝试这个
原文链接:https://www.f2er.com/html/530444.html<input id="menu-1" type="number" class="min" maxlength="2" value="1" name="menu-1"> // check here name attribute at last.
在你的JavaScript中
$("#form").click(function (e) {
let form = $(this);
//for data filtering
var serializedReturn = form.find('input[name!=menu-1]').serialize(); // here menu-1 be removed.
console.log(serializedReturn,'value');
e.preventDefault();
});