使用AJAX响应设置单选按钮
我需要在表格中设置一个单选按钮; 必须使用来自AJAX响应的值检查它。
我的AJAX响应是response.drive
。 “手动”或“自动”可能是它的价值。
更新:所以我尝试了一些不同的方式,但我无法弄清楚这一点。
单程 :
if(response.drive=="Manual") { .find('[name=drive]')[0].checked = true } else { .find('[name=drive]')[1].checked = true }
其他方式:
.find("input:radio[name='drive'][value='"+ response.drive +"']")[0].checked = true.end()
这就是我的ajax成功函数用于填充表单值的方式。
.success(function(response) { // Populate the form fields with the data returned from server response = jQuery.parseJSON(response) $('#editVehicle') .find('[name="vehicle_id"]').val(response.vehicle_id).end() .find('[name="vehicle_name"]').val(response.vehicle).end() .find('[name="seats"]').val(response.seats).end() .find('[name="luggage"]').val(response.luggage).end() .find('[name="doors"]').val(response.doors).end() .find('[name="emission"]').val(response.emission).end() //.find('[name="drive"]').val(response.drive).prop("checked",true).end() //.find('[name="aircon"]').val(response.aircon).prop("checked",true).end() //.find("input:radio[name='drive'][value='"+ response.drive +"']")[0].checked = true.end() //if(response.drive=="Manual"){ .find('[name=drive]')[0].prop('checked').end() //}else{ //.find('[name=drive]')[1].prop('checked') //} .find('[name="rental"]').val(response.price).end(); // Show the dialog ---- - ---- ---
这是单选按钮的HTML:
我该怎么做才能正确?
使用
$('#editVehicle').find(':radio[name=drive][value="1"]').prop('checked', true);
样品:
$(function() { response = { "vehicle_id": 2, "vehicle": "RENAULT TWINGO2798", "seats": 43, "luggage": 5, "doors": 34, "emission": 455, "drive": "Manual", "aircon": "Yes", "price": "435.000" }; console.log(response.drive); if (response.drive == 'Manual') $('#editVehicle').find(':radio[name=drive][value="1"]').prop('checked', true); else $('#editVehicle').find(':radio[name=drive][value="2"]').prop('checked', true); });
您可以为每个单选按钮提供一个id,然后:
$("#drive_1").attr('checked', 'checked');