我有以下html标签:
<select name="ct" id="ct">
<option value="-1">Tutte</option>
<option value="1">Da verificare</option>
<option value="2">Verificate</option>
<option value="3">Approvate</option>
<option value="4">Respinte</option>
<option value="5">Pubblicate</option>
<option value="6">Scadute</option>
<option value="7">Proposte</option>
<option value="8">Rifiutate</option>
<option value="9">Ritirate</option>
<option selected="selected" value="7,8,1">Proposte / Rifiutate / Da verificare</option>
</select>
我想将所选选项的属性值 (包含“ 7,8,1”)更改为value =“-1”,所以看起来像这样:
<option selected="selected" value="-1">Proposte / Rifiutate / Da verificare</option>
我尝试过:
$dom_richieste->getElementsByTagName('options')->getAttribute('value').value="-1";
但这不起作用...
答案 0 :(得分:3)
您可以使用$("#ct option[value='7,8,1']").val("-1");
$("#ct option[value='7,8,1']").val("-1");
console.log($("#ct").val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="ct" id="ct">
<option value="-1">Tutte</option>
<option value="1">Da verificare</option>
<option value="2">Verificate</option>
<option value="3">Approvate</option>
<option value="4">Respinte</option>
<option value="5">Pubblicate</option>
<option value="6">Scadute</option>
<option value="7">Proposte</option>
<option value="8">Rifiutate</option>
<option value="9">Ritirate</option>
<option selected="selected" value="7,8,1">Proposte / Rifiutate / Da verificare</option>
</select>
我建议您检查如何创建此下拉列表,并尽可能在创建下拉列表后替换该下拉列表。
答案 1 :(得分:1)
如果我正确理解,您将需要以下内容:
foreach ($dom->getElementsByTagName('option') as $item) {
if ($item->getAttribute('selected') == "selected")
$item->setAttribute("value", "-1");
}
通过这种方式传递选项项目并设置所选项目的值
答案 2 :(得分:0)
您已在代码中使用getElementsByTagName('options')
,并且没有名称为options
的标签。相反,您应该使用正确的标签名称option
。