发送ajax获得的数据,如何赋值到下拉选里,并且解决重复下拉的数据问题
前台代码:
点击修改按钮,执行ajax,根据id查出数据。
<div class="pop changeManagepop">
<div class="row">
<span class="personattr">运营中心:</span>
<select name="cmsId" id="title" class="title11">
<option value="9999999">请选择</option>
<c:forEach items="${cmsList}" var="cms" varStatus="st">
<c:if test="${not empty cms.title}">
<option value="${cms.id }">${cms.title }</option>
</c:if>
</c:forEach>
</select>
</div>
<input type="button" class="deletebtn" onclick="toChangeManage(${eCard.id})" value="修改" style="color:green">
</div>
js代码:
//点击发送ajax请求,不多说
function toChangeManage(id){
$(".changeManagepop").show();
$.ajax({
url:"/eCard/toChangeManage.html?id="+id,
type: "post",
dataType:"json",
cache:false,
async: false,
success: function(obj){ //主要是获取id
var id = obj.id;
$("#id").val(id);
if(obj.cms != null){
id = obj.cms.id;
$(".title11").val(id); //直接将id放到下拉选里,从而解决下拉的重复数据,非常重要。
}
}
})
}
后台代码:
public class ECardAction {
public String getECardList(Model model,
@RequestParam(value="pageNo",defaultValue="1")Integer pageNo){
Map<String , Object> map1 = new HashMap<String , Object>();
List<SuCmsManager> cmsList = managerService.selectManagerList(map1);
model.addAttribute("cmsList", cmsList);//进入页面的时候直接将下拉选的列表带过去
}
}
//根据id查出数据
@RequestMapping("/toChangeManage.html")
@ResponseBody
public String toChangeManage(@RequestParam(value = "id", required = false) Long id){
SuECard eCard = eCardService.selectByECardId(id);
return JSON.toJSONString(eCard);
}