Javascript 如何使用jquery更改选择选项?

Javascript 如何使用jquery更改选择选项?,javascript,jquery,Javascript,Jquery,所以我有一个类为“vuln table”的表,第一列充满了复选框,而最后一列是选项 我基本上已经知道了如何只对包含复选框的行执行警报框;但是,我现在需要弄清楚如何更改所选选项的值 这是我的js文件: function change_severity(severity) { $(".vuln-table tr").each(function() { $(this).find('td input:checked').each(function() {

所以我有一个类为“vuln table”的表,第一列充满了复选框,而最后一列是选项

我基本上已经知道了如何只对包含复选框的行执行警报框;但是,我现在需要弄清楚如何更改所选选项的值

这是我的js文件:

function change_severity(severity) {
    $(".vuln-table tr").each(function() {
        $(this).find('td input:checked').each(function() {
            // this row has a checkbox selected
            // this row needs to have the select value changed
        });
    });
}
这是包含我的选项的HTML

<tr role="row" class="even">
<td class="sorting_1"><input type="checkbox" name="asfasdfd" id="vuln_checked_" value="asdfsdfa"></td>
<td>something</td>
<td><select class="form-control" name="test" id="kjhtkjehtehr"><option value="Severe">Severe</option>
<option value="High">High</option>
<option value="Medium">Medium</option>
<option selected="selected" value="Low">Low</option>
<option value="Informational">Informational</option>
</select>
</td>
<td></td>
</tr>

某物
严峻的
高
中等
低
信息的
我通过点击按钮来传递严重性,它总是等于这些值之一。我基本上只想让选择的选项更改为设置为“严重性”的任何选项。因此,如果我将“严重”传递给函数,则所选选项现在应为“严重”。

下面的函数解决了这个问题

function change_severity(severity) {
$(".vuln-table tr").each(function() {
    $(this).find('td input:checked').each(function() {
        $(this).parent().parent().find("select").val(severity);
    });
});
}

下面的函数解决了这个问题

function change_severity(severity) {
$(".vuln-table tr").each(function() {
    $(this).find('td input:checked').each(function() {
        $(this).parent().parent().find("select").val(severity);
    });
});
}
试试这个:

function change_severity(severity) {
    $(".vuln-table tr").each(function() {
        $(this).find('td input:checked').each(function() {
            $(this).parent().parent().find('option[value="option value"]').remove();
            $(this).parent().parent().find("option:selected").val("option value").text("option value");
        });
    });
}
试试这个:

function change_severity(severity) {
    $(".vuln-table tr").each(function() {
        $(this).find('td input:checked').each(function() {
            $(this).parent().parent().find('option[value="option value"]').remove();
            $(this).parent().parent().find("option:selected").val("option value").text("option value");
        });
    });
}
}

变更严重性(“信息性”)

}



更改严重性(“信息性”)

我在HTML代码中没有看到任何复选框。它们是存在的。我只是觉得没必要把它都贴在这里。有没有一种方法可以在我想放美元的地方使用美元?无论如何,我都会更新我的示例。
td
是不必要的,因为它与问题无关。但是,复选框是问题的核心部分。请注意,建议是发布最小的可复制代码,而不是最小的代码。预期的行为没有得到很好的定义。值是如何确定的?我在HTML代码中没有看到任何复选框。它们是存在的。我只是觉得没必要把它都贴在这里。有没有一种方法可以在我想放美元的地方使用美元?无论如何,我都会更新我的示例。
td
是不必要的,因为它与问题无关。但是,复选框是问题的核心部分。请注意,建议是发布最小的可复制代码,而不是最小的代码。预期的行为没有得到很好的定义。值是如何确定的?@Gothd wat这怎么会改变所有的选择元素?对不起,我用
选项
错误地选择了
。无论如何,恐怕无法用这种方法更改
select
元素的值。@LewlSauce man总是使用较少的选择器。如果使用较多的选择器,则会影响代码performance@Gothd这怎么会改变所有的选择元素呢?对不起,我用
选项
错误地选择了
。无论如何,恐怕无法用这种方法更改
select
元素的值。@LewlSauce man总是使用较少的选择器。如果使用较多的选择器,则会影响代码performance@Gothdo为了方便起见,您使用了这些多个选择器并使其更加复杂?@sundar。我不认为它更复杂。@Gothd太复杂了。使用这个函数change_severity(severity){var tr;$(“.vuln table tr”)。each(function(){tr=$(this);$(this)。find('td input:checked')。each(function(){tr.find('option[value=“option value”])。remove();tr find('option:selected)).val(“选项值”).text(“选项值”);});}@Gothdo你在吗?删除你的否决票。不知道你否决了什么。删除that@Gothdo为了方便起见,您使用了这些多个选择器并使其更加复杂?@sundar。我不认为它更复杂。@Gothd太复杂了。使用这个函数change_severity(severity){var tr;$(“.vuln table tr”)。each(function(){tr=$(this);$(this)。find('td input:checked')。each(function(){tr.find('option[value=“option value”])。remove();tr find('option:selected)).val(“选项值”).text(“选项值”);};}@Gothdo你在吗?删除你的否决票。在不知道你否决了什么的情况下删除。删除该选项实际上对我非常有效,因为我可以反复更改严重性,而不会丢失以前的值。非常感谢你和@Gothdo!这实际上对我非常有效,因为我可以反复更改严重性,而不会丢失以前的值。非常感谢你和@Gothdo!