jQuery change事件

定义和用法

当元素的值发生改变时,会发生 change 事件。

该事件仅适用于文本域(text field),以及 textarea 和 select 元素。

change() 函数触发 change 事件,或规定当发生 change 事件时运行的函数。

注释:当用于 select 元素时,change 事件会在选择某个选项时发生。当用于 text field 或 text area 时,该事件会在元素失去焦点时发生。

例子1

当输入域发生变化时改变其颜色:

$(".field").change(function(){
  $(this).css("background-color","#FFFFCC");
});

例子2 ajax应用

JS文件:
$(function(){
$('#cate').change(function(){
var k=$(this).find('option:checked').val();
var pid=$(this).find('option:checked').attr('pid');
if(k==0||pid==0) {
alert('请选择二级分类!')
}else{
$.ajax({
type:"post",
url:"{:U('Goods/getdata')}",
data:{cid:k},
dataType:'json',
success:function(data){
var band=data.brand;
var spec=data.spec;
var bstr='';
bstr+='<select name="b_id" class="form-control">';
bstr+='<option value="">请选择</option>';
for(var i=0;i<band.length;i++){
bstr+='<option value="'+band[i].bid+'">'+band[i].bname+'</option>';
}
bstr+='</select>';
$('#brand').html(bstr);

var sstr='';
sstr+='<select name="s_id" class="form-control">';
sstr+='<option value="">请选择</option>';
for(var i=0;i<spec.length;i++){
sstr+='<option value="'+spec[i].sid+'">'+spec[i].sname+'</option>';
}
sstr+='</select>';
$('#spec').html(sstr);
}
});
}
})
})

HTML文件:
<label for="exampleInputEmail1">所属分类</label>
<select name="c_id" class="form-control" id="cate" >
<option value="">请选择</option>
<foreach name="cate" item="v">
<option value="{$v['cid']}" pid="{$v['pid']}">{$v['_name']}</option>
</foreach>
</select>

控制器文件
public function getdata(){
if(IS_AJAX){
$cid=I('post.cid');
$data['brand']=M('brand')->where('c_id='.$cid)->field('bid,bname')->select();
$data['spec']=M('spec')->where('cs_id='.$cid)->select();
echo json_encode($data);die;
}
}
原文地址:https://www.cnblogs.com/zz-tt/p/6595105.html