Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript设置HTML元素的默认值?_Javascript_Html_Select_Selected - Fatal编程技术网

如何使用JavaScript设置HTML元素的默认值?

如何使用JavaScript设置HTML元素的默认值?,javascript,html,select,selected,Javascript,Html,Select,Selected,如何使用JavaScript设置HTML元素的“选定”默认值。又称作当前选项0已“选中”,如何运行脚本将其更改为显示所需的值 例如,这是因为该值以前保存在数据库中,我只希望在用户实际指定时更新它。但是,如果我没有通过重新选择“上一个”选项来指定值,则保存“编辑”将使用加载的“默认选定”值覆盖上一个值 注意:因为我没有信誉将下面的答案添加到这个主题的常规线程中,这里是我使用javascript获得的解决方案,将选项设置为选择器中显示/选择的选项。这也可以是来自数据库的数据。使用此 document

如何使用JavaScript设置HTML元素的“选定”默认值。又称作当前选项0已“选中”,如何运行脚本将其更改为显示所需的值

例如,这是因为该值以前保存在数据库中,我只希望在用户实际指定时更新它。但是,如果我没有通过重新选择“上一个”选项来指定值,则保存“编辑”将使用加载的“默认选定”值覆盖上一个值

注意:因为我没有信誉将下面的答案添加到这个主题的常规线程中,这里是我使用javascript获得的解决方案,将选项设置为选择器中显示/选择的选项。这也可以是来自数据库的数据。

使用此

document.getElementById("selector").selectedIndex = 3;
使用value属性使用JavaScript设置新的选定值

document.getElementById'selector'。值=2; 违约 选择1 选择2 选择3 选择4 我们得到所有选项这是一个html集合,并对其进行迭代以检查是否有任何选项等于字符串或。并将其设置为“已选择”

注意-可能更好-DEFFO更短:在注释中提供帮助:

<script>
  let to_select = document.getElementById('selector');
  to_select.value = "<%= value %>";
</script>

Where to_select.value要么设置为所需的值,要么设置为数据库值。请注意,您可能需要也可能不需要。。根据的设置和存储数据的方式,设置的值。

这是否回答了您的问题?没有必要这么做。如果“选择”没有“多重”属性,则在将其他选项的“选定”属性设置为“真”之前,无需将任何其他选项的“选定”属性设置为“假”。你也不需要循环;只需将select元素的值设置为从数据库检索到的值,如问题注释中链接的问题答案中所述。请看,第一件事肯定是您需要知道的。我编辑了它,从我的答案中,我尝试了它,它在我的案例中起作用:。。。我也会检查你链接到的代码。好的,我设法使代码正常工作,但我不得不添加。。在我的周围,数据库调用使其在屏幕上的html选择器中正确更新,否则它说来自数据库的数据是“未定义的”;又名它把它当作变量。@HereticsMonkey tnx感谢你的时间和关注,如果可以的话,我会给你一个代表。。。不管怎样,我把你链接到的答案和我自己遇到的便条放在一起了。请不要回答重复的问题。相反,将它们标记为重复项,将重复问题的URL作为您答案中的原始链接。@HereticMonkey,我不能将我的答案添加到这些问题中,因为我没有这样做的声誉,但我不认为我的答案是给出的答案之一。。。而对我来说,我提供的答案就是我所需要的答案。因此,看到stackoverflow不让我提供答案,我帮助其他人的唯一方法就是这样做…@Arghore您可以将您的答案添加到我链接的问题中。任何人都可以;这个问题上没有锁。@HereticMonkey-我明白了:高度活跃的问题。为了回答这个问题,赢得10点声誉。声誉要求有助于保护此问题不受垃圾邮件和非回答活动的影响。。。所以我不能:@Arghore-Argh;很抱歉,这是堆栈溢出所做的一系列更改的一部分。我没有看到该消息,因为我有更多的rep,所以我不认为它是那样锁定的:。真烦人。。。
<script> 
    let options = document.getElementsByTagName('option');

    for(i=0; i<options.length; i++){
        if (options[i].value === "<%= or_some_string %>"){
            options[i].selected = true;
        }
    } 
</script>
<script>
  let to_select = document.getElementById('selector');
  to_select.value = "<%= value %>";
</script>