【问题标题】:autochecked checkbox with select带选择的自动选中复选框
【发布时间】:2015-11-02 19:43:13
【问题描述】:

你好,我正在考虑这样做,事实是不知道该怎么做,也许你可以帮忙

通过选择一个类别,复选框被激活

示例:

<select> <option value="Juegos"></option> </select>

还有我的复选框

<input id="privado" tabindex="7" type="checkbox" name="privado" /> 

您可以激活复选框来选择该类别吗?


图片示例:选择游戏类别:

http://screenshotuploader.com/i/1508/0od-n.png

复选框自动选中

选择代码

<select id="categoria-select" class="categoria-select" name="categoria" tabindex="3">
    <option value="">Seleccionar categor&iacute;a</option>
    <?php
        $feel = mysql_query("SELECT id_categoria, link_categoria, nombre_categoria FROM categorias ORDER BY nombre_categoria ASC");
        while(list($id, $link, $nombre) = mysql_fetch_row($feel))
        {
            echo "<option class=\"" . $link . "\" value=\"" . $id . "\" " . ($categoria == $id ? "selected=\"selected\"" : "") . ">" . $nombre . "</option>\n";
        }
    ?>
</select>

你能帮我吗?

【问题讨论】:

  • 我假设您之前的问题已被删除,这就是您再次提出相同问题的原因。但是您还没有回答针对您的旧问题提出的问题:1:您已经尝试过什么(以及您的尝试出了什么问题)? 2:&lt;option&gt; 元素与复选框&lt;input&gt; 元素有什么关系?
  • 你用谷歌搜索过 "javascript 如何获取选择值:stackoverflow""Select change event in javascript" 甚至 "动态更改复选框状态”?您可以快速轻松地创建出色的工作代码并感觉良好
  • 我很抱歉,如果不能很好地使用这个论坛也不会说英语,正在使用翻译。我所做的是,当您选择类别游戏复选框被激活
  • @LinkerosCompartimosTodo 他们希望您表明您在寻求帮助之前尝试自己解决问题。
  • 来吧...不要粘贴对任何人都毫无意义的&lt;php&gt; 代码,而是粘贴您得到的响应。学习使用开发者工具 (F12)。

标签: javascript select checkbox


【解决方案1】:
document.getElementById("select_input").onchange = function() {    
    document.getElementById("privado").checked = this.value === "Juegos";
};

您可以只设置onchange 并查看select 标签的值是否为“Juegos”并选中相应的复选框。

JSFiddle


要禁用复选框,只需执行以下操作..

document.getElementById("privado").disabled = true;

要在手动选中复选框时禁用复选框,请执行以下操作:

document.getElementById("privado").onchange = function()
{
    if(this.checked)
    {
        document.getElementById("privado").disabled = true;
    }
}   

如果您想在选择更改时禁用它,只需将 document.getElementById("privado").disabled = true; 行添加到答案原始部分的匿名函数即可。

【讨论】:

  • 不是投反对票的人,但人们通常会对质量差的问题的答案投反对票。
  • P.S:为什么要重新解析整个 DOM 来寻找可以使用 this 轻松定位的元素,例如:this.value?您只需要一行:privadoEl.checked = this.value === "Juegos";
  • @iismathwizard 添加了代码和小提琴,希望你不介意我的编辑:*
  • 另外,最好将 web (JS) 向前移动并使用addEventListener(在这种情况下没有重要原因:D)
  • @RokoC.Buljan 我一点也不介意。你对此很有礼貌,并提出了一个完全有效的观点。随心所欲:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-26
  • 1970-01-01
  • 2015-03-10
  • 2020-10-17
  • 1970-01-01
相关资源
最近更新 更多