比如有表1
<label>学历:</label>
<td>
<select name="select_edu" id="user_edu">
<option value="1">高中及以下</option>
<option value="2">大专</option>
<option value="3">本科</option>
<option value="4">研究生</option>
<option value="5">博士及以上</option>
</select>
</td>
如何根据数据库的1、2、3、4、5的值,使得显示页面2上为
<label>毕业学院:</label>
<td>
<span id="user_school_show" />X</span>
</td>
其中“X”的值为中文,数据库读取出的为数字,用${userInfo.userSchool}表示他的id
比如${userInfo.userSchool}=1,显示的X为高中及以下
var data = ' (后台填入/ajax获取) 的数据';
// 数据样式如下
var data = [{
"value": "高中及以下",
"userSchool": "1"
},{
"value": "高中",
"userSchool": "2"
},{同左},{同左}];
var obj = docuemnt.getElementById('user_school_show');
var schoolId = obj.getAttribute('data-id'); // <span id="user_school_show" data-id="2" />X</span>
for(var i = 0; i < data.length; i++){
if(schoolId == data[i].userSchool){
obj.innerHTML = data[i].value;
break;
}
}
先后台处理,存容器里面再在第二个页面取出来
先去数据库将这张表的数据查出来,然后在后台将数据绑定到下拉框,如果显示的数据是存在数据库中,直接遍历加载就可以了,如果数据是你自己根据1-5的数字自定义的,那你得判断然后在赋值绑定了。
你是想说 如果数据库值是3 那么选中本科吧 循环 select 的option 然后 比对值 比对成功的 selected = true
这个应该是很简单的AJAX取回,然后改变use_r_edu的值,再改变页2的值
用javascript发送AJAX等获取数据库对应的值,按行JS来修改对应的html值
$("#select_edu option[text=${userInfo.userSchool}]").attr("selected", "selected");
用javascript发送AJAX,获取数据库对应的值
如果值是固定不变的,就定义 一个数组呗:
var userEdus = { "高中及以下", "大专", "本科", "研究生", "博士及以上" };
学历 = userEdus[${userInfo.userSchool}];
var userEdus = { "", "高中及以下", "大专", "本科", "研究生", "博士及以上" };
忘了在前面加个空值;从1开始。