更改父元素值属性

时间:2018-08-31 10:03:02

标签: javascript jquery html

我有这样的html代码:

<td value='3' style='text-align: center'>
<select class='selection' onchange=''>
    <option value='1'>1</option>
    <option value='2'>2</option>
    <option value='3'>3</option>
</select>
</td>

我想做的是将select父项-td的值更改为onchange事件中的一个。我该怎么办?

如您所见,PS是td-因此我有多行并且无法将id分配给td / select

2 个答案:

答案 0 :(得分:1)

您想要这样的东西吗?

.active{
  background-color:yellow;
  border: 10px solid yellow;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td value='3' style='text-align: center'>
<select class='selection' onchange='PresaberiSve(this);'>
    <option value='1'>1</option>
    <option value='2'>2</option>
    <option value='3'>3</option>
</select>
</td>

<td value='3' style='text-align: center'>
<select class='selection' onchange='PresaberiSve(this);'>
    <option value='1'>1</option>
    <option value='2'>2</option>
    <option value='3'>3</option>
</select>
</td>
<tr>
</table>
.word

答案 1 :(得分:1)

这很简单:)

<td value='3' style='text-align: center'>
    <select class='selection' onchange='this.parentNode.setAttribute("value", this.value);'>
        <option value='1'>1</option>
        <option value='2'>2</option>
        <option value='3'>3</option>
    </select>
</td>

或者您可以使用脚本元素执行此操作:

<td value='3' style='text-align: center'>
    <select class='selection'>
        <option value='1'>1</option>
        <option value='2'>2</option>
        <option value='3'>3</option>
    </select>
</td>

<script>
    document.querySelectorAll('.selection').forEach(function(e){
        e.onchange = function(){ e.parentNode.setAttribute('value', e.value); });
    });
</script>