代码思路:在js中通过el表达式获取值(list集合),然后通过el表达式遍历该集合,拼接HTML语句。
代码如下,能看出来啥就看自己了:
$(".niwen").click(function(){ alert("开始"); var a=$(this).prev().text();//第一个 从右向左数,点击哪个标签则就获取哪个标签的上一个标签的值 var b=$(this).prev().prev().text();//第二个,点击哪个标签则就获取哪个标签的上一个的上一个标签的值 var str="<form id='question-edit-form'>"+//拼接HTML语句 "<span id='add-update-questionid' style='display:none;'></span>"+ "<div class='form-line exampaper-type' id='aq-course2'>"+ "<span class='form-label'><span class='warning-label'>*</span>专业:</span>"+ "<select id='field-select1' class='df-input-narrow'>"; <c:forEach items="${fieldList}" var ="t">//使用el表达式遍历集合找出想要的值并拼接HTML语句 var fieldId="${t.fieldId}"; var fieldName="${t.fieldName}"; if(fieldName==a){ str+="<option value='"+fieldId+"' selected='selected'>"+fieldName+"</option>"; }else{ str+="<option value='"+fieldId+"'>"+fieldName+"</option>"; } </c:forEach> str+="</select><span class='form-message'></span></div>"; str+="<div class='form-line exampaper-type' id='aq-course2'>"+ "<span class='form-label'><span class='warning-label'>*</span>知识类:</span>"+ "<select id='point-from-select' class='df-input-narrow'>"; <c:forEach items="${knowledgeList}" var ="r"> var pointId="${r.pointId}"; var pointName="${r.pointName}"; if(pointName==b){ str+="<option value='"+pointId+"' selected='selected'>"+pointName+"</option>"; }else{ str+="<option value='"+pointId+"'>"+pointName+"</option>"; } </c:forEach> str+="</select><span class='form-message'></span>"+ "</div></form>"; $(".modal-body").html(str);//最后将拼接好的HTML语句写到标签中 } ); |
写出这段代码的路径有些曲折,就不一一赘述了,奉上相关帖子一篇。
https://blog.youkuaiyun.com/qq_28379809/article/details/78817828