jQuery的combobox绑定失去焦点blur事件

   由于客户的需求,要求select选择列表框能输入文字,网上找了资料,只有jQuery的easyUI (http://www.jeasyui.com/)比较好不错,但在使用的过程当中才发现,不少坑!!javascript

   先说说怎么绑定失去焦点事件这个坑,combobox已经解除了的方法,对于blur方法已经默认解绑了,所以要本身来绑定。网上搜索了一下,比较靠谱的是:http://jsfiddle.net/ucqvrcn1/  ,本人的就是基于这个实例来作的。本人的combobox是根据代码动态生成的,id也是动态给的(标识不一样产品的参数,好比说这是颜色的id为1,其中用银色、镀金,长度为id为2,有1700mm、2500mm、3000mm,长度能够手工输入数值,但要判断长度是否在600mm-4000mm之间),并且是一组combobox,所以要绑定blur事件,是一组combobox都要绑定。css

 

<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title>Basic ComboBox - jQuery EasyUI Demo</title>
	<link rel="stylesheet" type="text/css" href="./easyui.css">
	<script type="text/javascript" src="./jquery.min.js"></script>
	<script type="text/javascript" src="./jquery.easyui.min.js"></script>
</head>
<body>

	<h2>ComboBox</h2>
	<p>Click the buttons below to perform actions.</p>

	
	<div class="easyui-panel" style="width:100%;max-width:400px;padding:30px 60px;">
		<div style="margin-bottom:20px">
			<select id="state" class="easyui-combobox parameter_combobox"  name="state" label="State:" labelPosition="top" style="width:100%;"  data-options="editable:true,panelHeight:'auto'"  >
				<option value="AL">Alabama</option>
				<option value="AK">Alaska</option>
				<option value="AZ">Arizona</option>
			</select>
		</div>
	</div>
	<div class="easyui-panel" style="width:100%;max-width:400px;padding:30px 60px;">
		<div style="margin-bottom:20px">
			<select id="state2" class="easyui-combobox parameter_combobox" name="state" label="State:" labelPosition="top" style="width:100%;"  data-options="editable:true,panelHeight:'auto'"  >
				<option value="AL">Alabama</option>
				<option value="AK">Alaska</option>
				<option value="AZ">Arizona</option>
			</select>
		</div>
	</div>

	</div>
	
</body>

<script type="text/javascript">

		 $(function(){
			<!-- 绑定失去焦点事件 -->
			var tb = $('.parameter_combobox');
			$.each(tb, function(n, value){
			  
			  console.log('n=' + n + " value=" + value);
			  console.log(value);
			  $(value).combobox('textbox').bind('blur', function(e){
				  console.log('失去焦点!');
				  console.log(e);
				  console.log('getValue=' + $(value).combobox('getValue'));
				  console.log('getText=' + $(value).combobox('getText'));
                     var this_id = $(value).attr("id");                            console.log("value.this_id=" + this_id);
				});
			});
			console.log(tb);
		 });
		
		 
</script>

</html>