现在有这样一个需求,当我们每次改变下拉框的值时,将选中的值通过Ajax方式传到后台进行处理:
<select id="order_id" onchange=reload()>
......
</select>
<script type="text/javascript">
function reload(){
$.ajax({
url : "/user/designerconvertreview/getCameristConvertList.do",
dataType : "json",
data : {
orderId : $("#order_id").val(),
isConvertId : $("#isConvert_id").val(),
</script>
最好不要使用$(“#xx”).change(function)的方式,原因如下:
$("#xx").change(function)
並不是触发事件,是绑定事件
代表你每執行一次function(data)就會綁定一次
第一次会执行绑定,所以你再操作的時候,就会执行change事件,然后再执行function(data) 再绑定一次
当你再继续变更的時候,因为綁定2次,就会执行change里的事件两次
select
的
onChange
事件
问题解决 (
onchange
、onfocus、onclick、onmousedown)
一、
onChange
事件
只有在
值改变
时才可触发,所以必须在每一次选择时(尤其第一次)保证选择的值是
改变
的!
select
ed >个人 //在这要选定一个默认的值 “
select
ed”
这样在选择第二个时,值就会变即可触发
onChange
;
1
、查看官方文档如下([官方文档]):
(
https
:
//developer.harmonyos.com/cn/docs/documentation/doc-references/js-components-basic-
select
-00000000006
1
1
7
1
2
)
select
除了通用
事件
外还支持change
事件
,该
事件
在
select
选择某项时触发。
2、前端代码如下
<div class=
"
container
"
>
<!--
select
组件设置change
事件
:@change=
"
se
<
select
class=
"
form-control
"
id
=
"
select
_data
"
name=
"
select
_data
"
>
{foreach key=key item=item from=$data}
<option value=
"
{$key}
"
>{$item}</option>
{/foreach}
</
select
>
<script>
$
(
"
#
select
_data
"
)
.bind
(
"
chang...
一、
onchange
事件
属性
onchange
事件
可以用于元素和元素,表示当内容
改变
并且失去焦点后触发,
onchange
也可以用于元素,当
改变
选择的项时会触发此
事件
。
但是要注意,在js代码中
改变
input的value值或者
改变
框中的值,或者
改变
的选中项(这个可以通过给
select
对象的
select
edIndex属性赋值来实现),这些情况均不能触发
onchange
事件
。那该怎么办呢,其实我们可