element-ui应用:select的change方法传递多个参数的方法详解

element-ui中的selectcheckbox等组件的change方法的回调函数只有当前选择的val,如果想再传入自定义参数怎么办?

element-ui应用:select的change方法传递多个参数的方法详解

不能够传入自定义的参数,在进行某些操作时,会比较困难,下面是change方法传递多个参数的方法:

方法一:@change="dataChange($event, args) $event就是当前选中的值。

  <el-select v-model="value" placeholder="请选择" @change="dataChange($event, 1)>
    <el-option
      v-for="item in options"
      :key="item.value"
      :label="item.label"
      :value="item.value">
    </el-option>
  </el-select>

方法二:@change="((val)=>{dataChange(val, 123)})val就是当前选中的值。

补充:

js中select 选择器的 change 事件处理函数

select 元素的 change 事件是当用户选择了不同的选项时触发的事件。你可以在 select 元素上添加 change 事件的监听器,以便在用户进行选择时执行相应的操作。

change 事件处理函数可以使用 Event.target 属性来获取触发事件的 select 元素,并使用 select.value 属性来获取当前选中的选项的值。

下面是一个示例代码:

<select id="my-select">
  <option value="option1">Option 1</option>
  <option value="option2">Option 2</option>
  <option value="option3">Option 3</option>
</select>
<div id="output"></div>
<script>
const select = document.getElementById('my-select');
const output = document.getElementById('output');
// 添加 change 事件监听器
select.addEventListener('change', event => {
  // 获取当前选中的选项的值
  const selectedValue = event.target.value;
  // 根据选项的值执行不同的操作
  if (selectedValue === 'option1') {
    output.textContent = 'You selected option 1';
  } else if (selectedValue === 'option2') {
    output.textContent = 'You selected option 2';
  } else if (selectedValue === 'option3') {
    output.textContent = 'You selected option 3';
  } else {
    output.textContent = 'Unknown option';
  }
});
</script>

在上面的代码中,我们使用 document.getElementById 方法获取了 select 元素和一个用于输出结果的 div 元素。然后,我们使用 addEventListener 方法在 select 元素上添加了一个 change 事件监听器,当用户选择不同的选项时,就会触发这个事件监听器。

在事件监听器中,我们使用 event.target 属性获取了触发事件的 select 元素,并使用 select.value 属性获取了当前选中的选项的值。根据选项的值,我们执行不同的操作,将结果输出到 output 元素中。

如何在select最开始时未选择时就展现出第一个元素的界面呢

当 select 元素没有选中任何选项时,它将显示一个默认的占位符,通常是第一个选项。如果你想要在 select 元素加载时就显示第一个选项的内容,可以在 HTML 中将该选项设置为 selected。例如:


<select>
  <option value="1" selected>Option 1</option>
  <option value="2">Option 2</option>
  <option value="3">Option 3</option>
</select>

在上面的代码中,我们将第一个选项设置为 selected,这意味着在 select 元素加载时,它将显示第一个选项的内容。

如果你是在使用 JavaScript 动态生成 select 元素,则可以使用 option.selected 属性将第一个选项设置为选中状态。例如:

js

<select>
  <option value="1" selected>Option 1</option>
  <option value="2">Option 2</option>
  <option value="3">Option 3</option>
</select>

在上面的代码中,我们使用 select.options[0].selected = true 将第一个选项设置为选中状态,然后将 select 元素添加到页面中。这将确保在 select 元素加载时,它将显示第一个选项的内容。

作者:terry,如若转载,请注明出处:https://www.web176.com/news/frontend/28043.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2024年2月13日
下一篇 2024年2月17日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注