JavaWeb基礎--(模糊搜索自動填充)

web腳本代碼:

  <body>
		<div class="container" style="margin-top: 50px;">
			<div class="panel panel-default">
				<div class="panel-heading">
					<h3 class="panel-title">請填寫如下信息:</h3>
				</div>
				<div class="panel-body">
					<form class="form-horizontal" action="#">
						<div class="form-group" style="position: relative;">
							<div class="col-sm-6">
								<div class="input-group">
								  <span class="input-group-addon">輸入查詢內容:</span>
								  <input type="text" class="form-control" id = "inWord" onkeyup = "findWord(this)">
								</div>
							</div>
							<div class="col-sm-3">
								<button type="button" id="butData" class="btn btn-primary">提交</button>
							</div>
						</div>
						<div class="panel panel-default" id = "showWord" style="position: absolute;display:none; ">
							  <ul class="list-group"></ul>
						</div>
					</form>
				</div>
			</div>
		</div>
	</body>
	<script type="text/javascript">
	function findWord(obj){
		var content = "";
		var word = $(obj).val();
		if(word.trim()== '')return;
			$.ajax({ 
				type: "POST",
				url: '/CopyKey/showWrod',
				async:true,
				data:{word:word},
				success: function(data){
					if(data.length > 0){
						for(var i = 0;i<data.length;i++){
							 content+="<li class='list-group-item' onclick = 'clickFn(this)' onmouseover='overFn(this)' onmouseout='outFn(this)'style='cursor:pointer'>"+data[i]+"</li>";
							}
						$("#showWord ul").html(content);
						$("#showWord").css("display","block");
						}
				  },
				dataType: "json"
			});
		};
	function clickFn(obj){
		var clickWord = $(obj).html();
		$("#inWord").val(clickWord);
		$("#showWord").css("display","none");
		}
	function outFn(obj){
		$(obj).css("background","#fff");
		}
	function overFn(obj){
		$(obj).css("background","#f2dede");
	}
	</script>

Service層代碼:

public List<String> findWord(String word) throws SQLException {
		String[] strs = word.split("'");
		StringBuffer sb = new StringBuffer();
		for (String str : strs) {
			sb.append(str);
		}
		FindWordDao findWord = new FindWordDao();
		List<String> wordList = findWord.findByWord(new String (sb));
		return wordList;
	}

dao層代碼:

public List<String> findByWord(String wrod) throws SQLException {
		List<String> wordList = new ArrayList<String>();
		Connection conn = JdbcUtils.getConnection();
		Statement st = null;
		ResultSet rs = null;
		if(conn != null){
			String sql = "select * from UT_E_Stock where name like '%"+wrod+"%' ";
			System.out.println(sql);
			st = conn.createStatement();
			rs = st.executeQuery(sql);
			while(rs.next()){
				String name = rs.getString("Name");
				wordList.add(name);
			}
		}
		return wordList;
	}

運行實例:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章