我在登录期间为我的项目实施安全问题。
例如,我有4个问题和4个<select>
框来选择每个问题
最初所有<select>
框都填充了所有4个问题
现在,如果用户从第一个<select>
框中选择第一个问题,则应该从其他<select>
框中省略/隐藏此问题,即其余问题(第1个除外)应该可用于第二个{{ 1}}框
此外,如果我返回第一个选择框并更改问题,则<select>
更改应反映在其他文字<option>
框中
现在我的项目中显然有4个以上的问题,以确保用户不会留下上一个<select>
的任何选项。
This is what I have tried so far 即可。但它会产生不良后果
答案 0 :(得分:0)
在检查所选值时,您必须考虑所有选择框,我已使用.each添加了一个循环,如下所示:
var questions =
[
{
"text" : "What is your father's middle name?",
"value" : "1"
},
{
"text" : "What is the first name of your first manager?",
"value" : "2"
},
{
"text" : "In what city was your father born?",
"value" : "3"
},
{
"text" : "What is the name of your pet?",
"value" : "4"
}
];
$(document).ready(function(){
$('select').each(function(){
var selectbox = $(this).empty();
for(var i = 0, l = questions.length; i < l; i++){
var question = questions[i];
selectbox.append($('<option>', {
value: question.value,
text : question.text
}));
}
});
$('select').change(function(){
var selectid = this.id;
var value = $(this).val();
$('select').each(function(){
var seleid = $(this).attr('id');
$("#"+seleid+" > option").each(function(){
if(seleid !== selectid)
{
sel = $(this);
$("#"+seleid+" option[value="+this.value+"]").show();
$('select').each(function(){
sel.value === value
$("#"+seleid+" option[value="+this.value+"]").hide();
});
}
});
});
})
});
在此处查看演示: http://jsfiddle.net/0vu7snhx/
答案 1 :(得分:0)
尝试这个希望它会起作用。
table.c
答案 2 :(得分:-2)
<select id='one'>
<option value='1'>1</option>
<option value='2'>2</option>
</select>
<select id='two'>
</select>
jQuery的:
$(document).ready(function(){
$('#one').change(function(){
var op= "<option value='1'>1</option><option value='2'>2</option>";
$('#two').html(op);
});
});