Javascript HTML/PHP在我填充select from数组的select中设置选项的值
我目前正试图在一个php变量的选择框中设置一个选项的值 就像登录屏幕在输入错误密码时保存用户名一样,如果提交出现问题,我想在滚动框中保存选项的值 现在问题出现了,我正在使用带有数组的脚本来填充选择框中的选项。(PS有更多的选择,但例如减少)Javascript HTML/PHP在我填充select from数组的select中设置选项的值,javascript,php,html,select,Javascript,Php,Html,Select,我目前正试图在一个php变量的选择框中设置一个选项的值 就像登录屏幕在输入错误密码时保存用户名一样,如果提交出现问题,我想在滚动框中保存选项的值 现在问题出现了,我正在使用带有数组的脚本来填充选择框中的选项。(PS有更多的选择,但例如减少) 瓦尔伊尔克瓦格= [ { “文本”:“警察”, “价值”:“警察” }, { “文本”:“教师”, “价值”:“教师” } ]; var selectBox=document.getElementById('yrke'); 对于(var i=0,l=yrk
瓦尔伊尔克瓦格=
[
{
“文本”:“警察”,
“价值”:“警察”
},
{
“文本”:“教师”,
“价值”:“教师”
}
];
var selectBox=document.getElementById('yrke');
对于(var i=0,l=yrkeValg.length;i
我试图从php类函数“hentYrke()”中设置值,但它被忽略了。已检查,且功能值正确。
例如,如何将teacher设置为php变量的值
<select id="yrke" name="yrke" value="<?php $nyDeltaker->hentYrke() ?>"></select>
由于页面加载时选择
元素的选项
在页面上不存在,因此您需要在添加选择
元素后再添加一行,以基本上“重新设置”该元素的值
<script>
var yrkeValg =
[
{
"text" : "Police",
"value" : "police"
},
{
"text" : "Teacher",
"value" : "teacher"
}
];
var selectBox = document.getElementById('yrke');
for(var i = 0, l = yrkeValg.length; i < l; i++)
{
var option = yrkeValg[i];
selectBox.options.add(new Option(option.text, option.value, option.selected));
}
// this is the line to add
selectBox.value = document.getElementById('yrke').getAttribute('value');
</script>
瓦尔伊尔克瓦格=
[
{
“文本”:“警察”,
“价值”:“警察”
},
{
“文本”:“教师”,
“价值”:“教师”
}
];
var selectBox=document.getElementById('yrke');
对于(var i=0,l=yrkeValg.length;i
请注意,根据您是否在hentYrek()
函数中实际执行echo
操作,您可能需要按照AamirR的建议执行。您的行缺少echo
,请尝试以下操作:
,在此处阅读有关echo的更多信息页面加载时,元素中不存在选项,这就是你的问题。你的Javascript和你的HTML存在于同一个文件中吗?是的,虽然我这次忘了添加“echo”,但我在其他时候尝试过它。你的答案很完美。我尝试了一些类似的东西:selectBox.value=“”,但当我还在学习php和html时,我只是走了这么远,不太清楚为什么它不起作用。非常感谢你的帮助!
<script>
var yrkeValg =
[
{
"text" : "Police",
"value" : "police"
},
{
"text" : "Teacher",
"value" : "teacher"
}
];
var selectBox = document.getElementById('yrke');
for(var i = 0, l = yrkeValg.length; i < l; i++)
{
var option = yrkeValg[i];
selectBox.options.add(new Option(option.text, option.value, option.selected));
}
// this is the line to add
selectBox.value = document.getElementById('yrke').getAttribute('value');
</script>