<!--自动输入文本值所需的jquery文件-->
<script src="/js/jquery-1.8.3.min.js" type="text/JavaScript"></script>
<script type="text/javascript" src="../AjaxJs/jQueryAutocompletePlugin-master/jquery.autocomplete.min.js"></script>
<link rel="stylesheet" type="text/css" href="../AjaxJs/jQueryAutocompletePlugin-master/jquery.autocomplete.css"/> <script language="JavaScript" type="text/JavaScript"> //以下是处理IE中indexOf不兼容的定义方法
if(!Array.indexOf)
{
Array.prototype.indexOf = function(obj){ for(var i=0; i<this.length; i++){ if(this[i]==obj){return i;}
}
return -1;citynames
}
} //添加节点:开始
$(document).ready(function(){ /*根据输入内容动态加载:*/ //citynames :开始
$("#citynames").autocomplete("/tools/TicketPlan/view/InloadMiojiCity.asp",{
minChars: 1,//自动完成激活之前填入的最小字符
max:100,//列表条目数
width: 500,//提示的宽度
mustMatch: true,
scrollHeight: 500,//提示的高度
matchContains: true,//是否只要包含文本框里的就可以
autoFill:true,//自动填充
scroll:true,
dataType: "json",
pagingMore:true,
parse: function(data) {
return $.map(data, function(row) {
return {
data: row,
value: row.id,
result: row.cname
}
});
},
formatItem: function(data, i, max) {//格式化列表中的条目 row:条目对象,i:当前条目数,max:总条目数
return data.cname;
},
formatMatch: function(data, i, max) {//配合formatItem使用,作用在于,由于使用了formatItem,所以条目中的内容有所改变,而我们要匹配的是原始的数据,所以用formatMatch做一个调整,使之匹配原始数据
return data.cname;
},
formatResult: function(data) {//定义最终返回的数据,比如我们还是要返回原始数据,而不是formatItem过的数据
return data.cname;
}
}).result(function(event,data,formatted){
$("#citynames").val('');
var SelectHtml="<div style='overflow:hidden;margin-right:8px;margin-bottom:8px;background-color: #eaf9fe;border: 1px solid transparent;display: flex;justify-content: center;float:left;padding: 5px;border-radius: 2px;'><select class='mdd_sel' style='float: left;width: 50px;color: rgb(102, 140, 197);'>";
SelectHtml+="<option value='"+0+"'>不过夜</option>";
for(var j=1;j<=30;j++)
{
if(j==1){
SelectHtml+="<option selected value='"+j+"'>"+j+"晚</option>";
}else{ SelectHtml+="<option value='"+j+"'>"+j+"晚</option>";
}
}
SelectHtml+="</select>"; $("#DivCityNames").append(''+SelectHtml+''+'<p id=p'+data.id+' class="creat_p"><span id="'+data.id+'" class="creat_span">'+data.cname+'</span><a href="javascript:;" style="line-height:28px;color:#668cc5;position:absolute;right:-3px;top:-1px;width:20px;height:30px;text-align:center;cursor:pointer;font-size:10px;">X</a></p></div>'); });
//citynames :结束 /*删除城市:开始*/
$('.span_box a').live('click',function(){
$(this).parent().parent().remove();
});
/*删除城市:结束*/ /*一次加载、多次使用:*/ //$.ajax({
// url:"/tools/TicketPlan/view/InloadMiojiCity.asp",
// type:"get",
// dataType:"json",
// cache: false,
// success:function(result){
//
// var data =result; //citynames :开始
// $("#citynames").autocomplete(data,{
// minChars: 1,//自动完成激活之前填入的最小字符
// max:100,//列表条目数
// width: 500,//提示的宽度
// mustMatch: true,
// scrollHeight: 500,//提示的高度
// matchContains: true,//是否只要包含文本框里的就可以
// autoFill:false,//自动填充
// scroll:true,
// pagingMore:true,
// formatItem: function(data, i, max) {//格式化列表中的条目 row:条目对象,i:当前条目数,max:总条目数
// return data.cname;
// },
// formatMatch: function(data, i, max) {//配合formatItem使用,作用在于,由于使用了formatItem,所以条目中的内容有所改变,而我们要匹配的是原始的数据,所以用formatMatch做一个调整,使之匹配原始数据
// return data.cname + data.ename;
// },
// formatResult: function(data) {//定义最终返回的数据,比如我们还是要返回原始数据,而不是formatItem过的数据
// return data.ename;
// }
// }).result(function(event,data,formatted){
// $("#citynames").val('');
// var SelectHtml="<div style='overflow:hidden;margin-right:8px;margin-bottom:8px;background-color: #eaf9fe;border: 1px solid transparent;display: flex;justify-content: center;float:left;padding: 5px;border-radius: 2px;'><select class='mdd_sel' style='float: left;width: 50px;color: rgb(102, 140, 197);'>";
// SelectHtml+="<option value='"+0+"'>不过夜</option>";
// for(var j=1;j<=30;j++)
// {
// if(j==1){
// SelectHtml+="<option selected value='"+j+"'>"+j+"晚</option>";
// }else{
//
// SelectHtml+="<option value='"+j+"'>"+j+"晚</option>";
// }
// }
// SelectHtml+="</select>";
//
// $("#DivCityNames").append(''+SelectHtml+''+'<p id=p'+data.id+' class="creat_p"><span id="'+data.id+'" class="creat_span">'+data.cname+'</span><a href="javascript:;" style="line-height:28px;color:#668cc5;position:absolute;right:-3px;top:-1px;width:20px;height:30px;text-align:center;cursor:pointer;font-size:10px;">X</a></p></div>');
//
// });
//citynames :结束
// }
//
// }); /*自动选择城市:结束*/ }) /*获取城市天数:开始*/
function CityNamesDays()
{
var cityarray=[];
var dayids=[];
var citynames=[]; /*自动选择城市:开始*/
var Input_cityids=document.getElementById('cityids');
var Input_dayids=document.getElementById('dayids');
var input_wanshu=0;
for (var i = 0; i < $("#DivCityNames").children("div").length;i++)
{
var day= $("#DivCityNames").children("div").eq(i).find("select").val();
//获取选中天数
dayids.push(day);
input_wanshu= input_wanshu+parseInt(day);
var city= $("#DivCityNames").children("div").eq(i).find("p").children("span").attr("id");
var cityname= $("#DivCityNames").children("div").eq(i).find("p").children("span").text();
cityarray.push(city);
citynames.push(cityname);
}
Input_dayids.value=dayids.join(",");
Input_cityids.value=cityarray.join(",");
document.getElementById('tz_visitcity').value=citynames.join(",");
document.getElementById('nights').value=input_wanshu; }
/*获取城市天数:结束*/ //添加节点:结束 </script>

autocomplete.js的使用(2):自动输入时,出现下拉选择框的更多相关文章

  1. autocomplete.js的使用(1):自动输入时,出现下拉选择框

    autocomplete.js可以实现自动输入文本值,并出现下拉框 js引用:所需要的autocomplete文件需要在网站中自行下载. <!--自动输入文本值所需的jquery文件--> ...

  2. jquery.chosen.js下拉选择框美化插件项目实例

    由于之前使用的bootstrap-select插件是建立在bootstrap基础上的,实际使用到项目中的时候,与我们使用的ace-admin(基于bootstrap)存在样式冲突,导致下拉框的样式发生 ...

  3. 原生js实现一个自定义下拉单选选择框

    浏览器自带的原生下拉框不太美观,而且各个浏览器表现也不一致,UI一般给的下拉框也是和原生的下拉框差别比较大的,这就需要自己写一个基本功能的下拉菜单/下拉选择框了.最近,把项目中用到的下拉框组件重新封装 ...

  4. jQuery搜索框自动补全功能插件实现-autocomplete.js

    最近用nodeclub实现股票的输入关键字自动补全股票信息进行搜索功能,原先用jQuery-ui,结果jQuery-ui库太大,所以考虑用其他插件,最终选择使用autocomplete.js,控件简单 ...

  5. js实现文本框或文本域在用户输入时(oninput)触发事件,操作元素

    写在前面:给不同的文本框设定同样的效果,当文本框没有内容输入时,‘下一步’按钮不可用且透明度为0.5.当有内容输入时(并不是获得焦点时focus),‘下一步’按钮状态可用, 且透明度为1. <s ...

  6. jQuery UI Autocomplete是jQuery UI的自动完成组件

    支持的数据源 jQuery UI Autocomplete主要支持字符串Array.JSON两种数据格式. 普通的Array格式没有什么特殊的,如下: ? 1 ["cnblogs" ...

  7. jquery autocomplete实现读取sql数据库自动补全TextBox

    转自我本良人 原文 jquery autocomplete实现读取sql数据库自动补全TextBox 项目需要这样子一个功能,其他部门提的意见,只好去实现了哦,搞了好久才弄出来,分享一下. 1.前台页 ...

  8. jquery.autocomplete.js 插件的自定义搜索规则

    这二天开始用jquery.autocomplete这个自动完成插件.功能基本比较强大,但自己在实际需求中发现还是有一处不足!问题是这样:当我定义了一个本地数据JS文件时,格式为JSON式的数组.如下: ...

  9. Jquery autocomplete.js输入框联想补全功能

    Jquery autocomplete.js插件下载地址:http://files.cnblogs.com/files/jinzhiming/autocomplete.rar 有两种用法,一种是直接使 ...

随机推荐

  1. Leetcode 18

    class Solution { public: vector<vector<int>> fourSum(vector<int>& nums, int ta ...

  2. 尺取法拓展——POJ3320

    #include <iostream> #include <cstdio> #include <algorithm> #include <set> #i ...

  3. CSS border 属性和 border-collapse 属性

    border 简写属性在一个声明设置所有的边框属性. 可以按顺序设置如下属性: border-width border-style border-color 如果不设置其中的某个值,也不会出问题,比如 ...

  4. Xcode6中手动添加Precompile Prefix Header

    Xcode5中创建一个工程的时候,系统会自动创建一个以以工程名为名字的pch(Precompile Prefix Header)文件,开发的过程中可以将广泛使用的头文件以及宏包含在该文件下,编译器就会 ...

  5. 006——php字符串中的处理函数(五)

    <?php /** * 一.addslashes() 在预定义字符串前添加反斜杠 * * stripslashes() 把转义字符串前的反斜杠删除 * get_magic_quotes_gpc( ...

  6. spring MVC 使用 modelAndView.setViewName("forward:*.action") 发送重定向

    1.Servlet重定向forward与redirect: 使用servlet重定向有两种方式,一种是forward,另一种就是redirect.forward是服务器内部重定向,客户端并不知道服务器 ...

  7. react中map循环中key取值问题

    数组中没有唯一的key,可以定义变量,拼接字符串连接. let i = 0; key={`infoItem-col-${i++}`}

  8. MQTT再学习 -- 搭建MQTT服务器及测试

    最近在搞 PM2.5 采集,需要用到 MQTT 传输协议.协议部分看了几天的,讲的七七八八.本身在 intel 上有 写好的MQTT 的源码,现在的工作其实也就是移植到单片机上或者DM368板卡上.不 ...

  9. iOS-----多线程之NSThread

    多线程 iOS平台提供了非常优秀的多线程支持,程序可以通过非常简单的方式来启动多线程,iOS平台不仅提供了NSThread类来创建多线程,还提供了GCD方式来简化多线程编程,提供了NSOperatio ...

  10. 在Android中来修改SQL里面的权限和显示内容

    1.在Android中建立了一个数据库. 然后要知道存储数据库的路劲.得到路劲然后进入cmd里面进到 手机终端. 2.利用splite3来显示数据库里面的东西. 3.利用chmod来修改数据库文件的权 ...