下拉框显示点击的选项

下拉框中利用onclick点击响应添加了(见getdatasets()方法),但下拉的选项无法被选择显示到框里。onchange应该怎么写

 <div class="form-group" id="select_now">
            <label class="col-xs-3 control-label">选择已有数据集</label>
            <div class="col-xs-3">  
                <select  class="form-control" name="select_dataset" id="select_dataset" onclick="getdatasets();">
                </select>
            </div>
          </div>
function getdatasets(){
    $.ajax({
        type : "POST",
        url:"<%=contextPath%>/getDatasets",
        data : {
            type : "0",
            testname : "自动分类",
        },
        dataType : "json",
        async : false,
        context : null,
        success : function(jsonData) {
             if (jsonData && jsonData != '[]') { 
            //下拉菜单选项显示数据库名,值为数据库的真实地址
            var dataList = jsonData;
            var select_dataset = $("#select_dataset");
            select_dataset.html('');
            var inner = "";
            for(var i = 0; i<dataList.length; i++){             
                inner += "<option value= '"+dataList[i].datasetpath +"'>" + dataList[i].dataset + "</option>";      
            }
            $("#select_dataset").append(inner);
             }
        }   
    }); 
}

2个回答

你每次click都加载数据了,所以根本选不中。。select的初始化根本不需要事件,直接初始化就行了啊

 <div class="form-group" id="select_now">
    <label class="col-xs-3 control-label">选择已有数据集</label>
    <div class="col-xs-3"><!--去掉onclick事件,也不需要onchange-->
        <select class="form-control" name="select_dataset" id="select_dataset" ></select>
    </div>
</div>
<script>
    function getdatasets(){
        $.ajax({
            type : "POST",
            url:"<%=contextPath%>/getDatasets",
            data : {
                type : "0",
                testname : "自动分类",
            },
            dataType : "json",
            async : false,
            context : null,
            success : function(jsonData) {
                if (jsonData && jsonData != '[]') { 
                    //下拉菜单选项显示数据库名,值为数据库的真实地址
                    var dataList = jsonData;
                    var select_dataset = $("#select_dataset");
                    select_dataset.html('');
                    var inner = "";
                    for(var i = 0; i<dataList.length; i++){             
                        inner += "<option value= '"+dataList[i].datasetpath +"'>" + dataList[i].dataset + "</option>";      
                    }
                    $("#select_dataset").append(inner);
                }
            }   
        }); 
    }
    getdatasets()//////////////////////////////直接初始化就行了
</script>
showbo
支付宝加好友偷能量挖 回复weixin_40729074: 你代码就只初始化select_dataset这个select了,没有操作其他的对象,如果有那就你其他代码有问题,和这个没关系
接近 2 年之前 回复
weixin_40729074
weixin_40729074 回复showbo: 让这个函数只初始化这一个select该怎么实现?
接近 2 年之前 回复
weixin_40729074
weixin_40729074 回复showbo: 我的意思是这个函数貌似初始化了多个,比如input好像也会被初始化,因为这个jsp还有其他输入框选择框,我想让他只初始化这一个下拉框,现在eclipse一运行就停止响应,我不知道原因,改之前没有。
接近 2 年之前 回复
showbo
支付宝加好友偷能量挖 回复weixin_40729074: 你可以做成函数的形式,传入要初始化话的select id,和参数,这样select初始化共用这个函数就行了,不需要写n多个函数
接近 2 年之前 回复
weixin_40729074
weixin_40729074 但是jsp里不只这一个下拉框这样初始化没有影响吗?我这eclipse貌似卡住了
接近 2 年之前 回复
weixin_40729074
weixin_40729074 醍醐灌顶
接近 2 年之前 回复

选中要用selected啊

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何实现下拉框点击一个选项,该选项的内容显示在文本框中?
``` <div class="input-group"> <input class="form-control select_of_input"> <div class="input-group-btn"> <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"> <span class="caret"></span> </button> <ul class="dropdown-menu pull-right"> <li><a href="#">学一</a></li> <li><a href="#">北洋广场</a></li> <li class="divider"></li> <li><a href="#">其他</a></li> </ul> </div> </div> ``` 这是一个下拉框,想问一下这样的下拉框,如何用js或者jq实现点击下拉框的一个li然后这个li的内容显示在文本框里面~谢谢
怎么实现点击下拉菜单选中不同的选项在下方显示不同的文本框
![图片说明](https://img-ask.csdn.net/upload/201607/21/1469085160_943384.jpg) 请问要怎么实现我选择不同的题目类型 下面出现不同的填选项的文本框 比如 单选 /文本框(格式不同).....
selenium如何点击生意参谋每页显示多少条的下拉框
![图片说明](https://img-ask.csdn.net/upload/201905/17/1558061843_492048.jpg) 这个下拉框的选项没有在element中出现,当点击数字10所在的位置时出现下拉框,同时element中多出一个DIV 如下图, ![图片说明](https://img-ask.csdn.net/upload/201905/17/1558062019_518699.jpg) 但是用 ``` driver2.find_element_by_xpath('/html/body/div[7]/div/div/div/ul/li[5]').click() ``` 找不到下拉列表中的元素,大神们指点。
树形下拉复选框点击选中时候显示输入框 如何实现
![图片说明](https://img-ask.csdn.net/upload/201906/04/1559644243_280913.jpg) 如图 复选框每个选项后面都有三个输入框 如何做到点击选中时候才显示
jQuery的each循环实现左侧下拉菜单的问题
期望效果:点击一个菜单,会显示选中的效果(背景变灰色,文字变红色),点击有子菜单的选项,子菜单会下拉显示,再点一下这个选项,子菜单收回(必须再点击同一个父选项才会收回)。 现有问题:选中效果已经出来,但在子菜单下拉后,点击列表中的任意选项都会使子菜单收回。 被要求的实现方式:通过控制高度(height),设置其为0或不为0来控制子菜单的显示,通过transition:height 1s来控制下拉效果。 附上代码: ``` <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery-3.2.1.js" type="text/javascript"></script> <style type="text/css"> .nav_bg { height: 42px; border-bottom: 1px solid; } .nav_submenu { height: 24px; border-bottom: 1px solid; } .nav_bg_gray { background-color: gray; } .nav_sub { overflow: hidden; height: 0; transition: height 1s; } </style> </head> <body> <div id="menulist"> <div class="nav_bg" id="nav_bg_1" onclick="loacalPage()"> <a><span>单位审核</span></a> </div> <div class="nav_bg" id="nav_bg_2" onclick="loacalPage()"> <a><span>未读事项</span></a> </div> <div class="nav_bg" id="nav_bg_3" onclick="loacalPage()"> <a><span>我的工作</span></a> </div> <!--原本nav_submenu和nav_bg是同级,现添加一个div——nav_sub将他们包裹起来--> <div class="nav_sub" id="nav_bg_4"> <div class="nav_submenu" onclick="loacalPage()"> <a><span>&nbsp;&nbsp;&nbsp;&nbsp;已完成</span></a> </div> <div class="nav_submenu" onclick="loacalPage()"> <a><span>&nbsp;&nbsp;&nbsp;&nbsp;未完成</span></a> </div> </div> <div class="nav_bg" id="nav_bg_5" onclick="loacalPage()"> <a><span>督办事项</span></a> </div> <div class="nav_bg" id="nav_bg_6" onclick="loacalPage()"> <a><span>测试</span></a> </div> <div class="nav_sub" id="nav_bg_7"> <div class="nav_submenu" onclick="loacalPage()"> <a><span>&nbsp;&nbsp;&nbsp;&nbsp;测试1</span></a> </div> <div class="nav_submenu" onclick="loacalPage()"> <a><span>&nbsp;&nbsp;&nbsp;&nbsp;测试2</span></a> </div> </div> </div> </body> <script> $(function() { loacalPage(); }); function loacalPage() { changemenucolor(); dropdown(); } //该方法用于添加一个功能———点击“我的工作”或“测试”两项时,下面的子div隐藏,再次点击时则 //显示 function dropdown() { $("#nav_bg_3").on("click", function() { var subdiv = $("#nav_bg_4").find("div"); var h = 0; subdiv.each(function() { h += $(this).outerHeight();//获得每个子div的高度,包括边框 }); var val = $("#nav_bg_4").height(); if(val != 0) { $("#nav_bg_4").height(0); } else { $("#nav_bg_4").height(h); } }); $("#nav_bg_6").on("click", function() { var subdiv = $("#nav_bg_7").find("div"); var h = 0; subdiv.each(function() { h += $(this).outerHeight();//获得每个子div的高度,包括边框 }); var val = $("#nav_bg_7").height(); if(val != 0) { $("#nav_bg_7").height(0); } else { $("#nav_bg_7").height(h); } }); } //该方法使用了each进行循环,点击menudiv下的每一个div时,将点击的div样式改为灰底红字 //其他地方的样式改为白底默认字体 function changemenucolor() { $("#menulist div").click(function() { var menudiv = $("#menulist").find("div"); var thisclass = $(this).attr("class"); //添加该if条件进行判断,防止因多次重复进入each循环中而导致的nav_submenu无样式 if(thisclass != 'nav_sub') { menudiv.each(function() { $(this).find('a').attr("style", ""); if($(this).attr("class") != 'nav_submenu') { if($(this).attr("class") != 'nav_sub') { $(this).attr("class", "nav_bg"); } else { $(this).attr("style", "background-color:#fff;"); } } else { $(this).attr("style", "background-color:#fff;"); } }); } $(this).find('a').attr("style", "color:#B50B14;font-weight:bold"); if($(this).attr("class") != 'nav_submenu') { if($(this).attr("class") != 'nav_sub') { $(this).addClass("nav_bg_gray"); } else { $(this).attr("style", "background-color:gray;"); } } else { $(this).attr("style", "background-color:gray;"); } }); } </script> </html> ```
ext combobox如何自动展示下拉层
有个需求,extjs combobox下拉选项框不需要点击combobox右边的下拉箭头,在打开页面显示完成就自动显示下拉选项框 效果如下图所示,不需要人工用鼠标点击下拉箭头 ![](http://www.w3dev.cn/imgblog/20160908/1052202374.png)
WinCE6.0 不能在设备上调试
在WinCE 6.0开发中,编译好NK.Bin文件后,通过一根网线直接与设备相连,网络显示局域网已连接,点击Target/Connectivity Options Target Device:CE Device Download:Ethernet Transport:Ethernet Debugger:None 点击Download下拉框右边的"Settings",发现 Target device boot name下拉框没有任何可选项,如图。不知是什么原因。设备的IP没法设置,设备类似于PDA,但只有几个触摸键。是不是要借助ActiveSync?还是要修改置WinCE600文件夹下的哪个文件?
为何点击下一个菜单,还在调用上一菜单页面的引用文件?
我想向高手请教一个问题,困扰了我很久,首先,我把问题的现象描述一下:公司的供应商开发了一个商品系统,里面是商品的基本资料,对应的是“商品资料”菜单;后来,因为这个系统的用户的要求,公司自己的开发人员进行了二次开发,增加了一个“供应商退货”应用,对应的是“供应商退货”菜单。 在供应商退货应用的源码加入到原来的系统里面之前,点击任意菜单,回到商品资料菜单,都没有发生问题;但是,当我在供应商退货开发完成之后,把源代码加入到这个系统以后,用户反映,只要先点击了供应商退货菜单,然后,再点击商品资料菜单,原来的商品资料页面几乎不显示内容了,后来,我经过F12查看前端的源代码,发现是原来供应商开发的商品资料页面缺少了引用jquery-1.7.x.js的文件,于是,我在这个页面的开端引用了这个文件,可是,这个页面没用多久,用户又反映说如果点击“新建商品”,也就是一个新的URL入口,页面中有一段代码报错,不运行了。这段代码就是,点击一个标签为“大分类”的空文本框,出现一个下拉框,里面是各种类别的选项。代码是这样的<input id="categoryName" curl=ctx+"/item/categories?"+catlgId />,具体代码是怎样的我可能记得不是最清晰,但是,大致就是这样的。报错的内容是:Array.string.trim()...然后,当我点击报错的行号,出现的是我退货管理页面里最后调用的一个js文件,里面有一个String.prototype.trim()的函数,我是重写了trim()这个函数,并且封装。但是,最后的返回值return this.replace(/^\s+|\s+$/g, ""); 划红色下划线的,就是这个this.replace(...) is not a function. 我觉得奇怪,为何我已经点击了商品资料页面,它还在调用之前退货商品管理页面的JS文件?我怎么才能清理掉以前页面的引用文件,从点击页面开始加载这个页面的引用文件呢? 这是什么性质的错误? 谢谢,请高手及时回复。 PJ
在javascript写的数组,每次在列表里选其他的选项(<a>)输入框中都会显示数组的最后一项
每次在下拉框里选中任意一个选项点击后,输入框里都只显示数组的最后一项;不知道哪里错了。。感谢 ![图片说明](https://img-ask.csdn.net/upload/201511/30/1448888951_877783.png) ![图片说明](https://img-ask.csdn.net/upload/201511/30/1448888960_790478.png) ![图片说明](https://img-ask.csdn.net/upload/201511/30/1448889020_872896.png) ``` <html> <head> <title> MyPage </title> <script> function showDiv(){ var div = document.getElementById('sel'); div.style.display = "block"; var TeacherName = new Array("张晓梅","张瑞华","张爱武","张立群"); for(var i =0; i<TeacherName.length;i++){ var div1 = document.createElement("div"); div1.setAttribute("id","div-"+i); div.appendChild(div1); s = TeacherName[i]; a = document.createElement("a"); a.setAttribute("id","a-"+i); a.innerHTML = s; alert(a.id); a.setAttribute("href","javascript:getValue('mainTeacher',s)"); div1.appendChild(a); div.appendChild(div1); } } function hideDiv(){ var div = document.getElementById('sel'); div.style.display="none"; } function getValue(targetObj,sourceObj){ alert(targetObj); alert(sourceObj); document.getElementById(targetObj).value = sourceObj; hideDiv(); } </script> </head> <body> <input type='text' id='mainTeacher' class="myTxt" onkeydown="showDiv();" /> <input type="button" value="确定"/> <div id='sel' class='myDiv' style="left:10px; top:40px; width:150px; height:100px; display:none;"> <!--<div> <a href="javascript:getValue('txt1','选择一')">选择一</a> </div> <div> <a href="javascript:getValue('txt1','选择二')">选择二</a> </div> <div> <a href="javascript:getValue('txt1','选择三')">选择三</a> </div> <div> <a href="javascript:getValue('txt1','选择四')">选择四</a> </div>--> </div> </body> </html> ```
实现jQuery获取json并输出为表格
jQuery获取json对象某个属性的对象信息并输出为表格,在页面选择下拉菜单的某一个选项(指向不同页面),然后在输入框填入查询记录数。点击查询就显示json中的这个json对象中的信息! json对象包含多个属性,其中只有一个属性名为result的对象中,包含了一系列子属性(如:image:{”total”:1,”max”:51,”min”:10})。要求输出表格标题头是type(对应不同的image1,2,3...),total,max,min。。 尝试过很多次,调试发现在读json的时候总是提示系统无法获取文件,result输出时出现的。result同胞能获取。。。
EXTJS弹出窗口(widow),添加和删除选项值
现有一页面A,A有一个显示的文本框,文本框后面有一个“添加”按扭。 现要实现点击“添加”按钮,弹出一个window。如果图B。弹出的window(称为B窗口), B窗口下半部分是下拉列表,选择下拉表一个值,点击B窗口的添加按钮,所选的值, 可以显示在B窗口上半部分,并且带有复选框。如果选中上半部分的某个值。点击删除按钮 可以将该值从上半部分移除。 最后 的最后 点击 B最右下脚的“确认”按钮。所选的所有值,显示在A的文本框内,并用逗号隔开。![图片说明](https://img-ask.csdn.net/upload/201609/13/1473758392_313891.jpg)
这个Javascript脚本如何写,谢谢大神帮忙
网页有一个下拉框控制显示记录的行数,默认是10行。我现在有一款软件可以自己添加JavaScript脚本来控制下拉框显示记录(当鼠标点击这个下拉框时触发)我需要脚本显示最大行数(如有30条就显示30条,50条就50条)其他选项不需要.这个下拉框的HTML代码如下 <SELECT style="MARGIN: 5px 4px 0px; FONT-FAMILY: 宋体" id=an_s onchange=s_onchange(this.id,this.value)><OPTION value=1> 1</OPTION><OPTION value=2> 2</OPTION><OPTION value=3> 3</OPTION><OPTION value=4> 4</OPTION><OPTION value=5> 5</OPTION><OPTION value=6> 6</OPTION><OPTION value=7> 7</OPTION><OPTION value=8> 8</OPTION><OPTION value=9> 9</OPTION><OPTION selected value=10>10</OPTION><OPTION value=11>11</OPTION><OPTION value=12>12</OPTION><OPTION value=13>13</OPTION><OPTION value=14>14</OPTION><OPTION value=15>15</OPTION><OPTION value=16>16</OPTION><OPTION value=17>17</OPTION><OPTION value=18>18</OPTION><OPTION value=19>19</OPTION><OPTION value=20>20</OPTION></SELECT> 谢谢了,我水平有限,如果要举例用ID,方法什么的就用我提供的名字,要不我就糊涂了
这个脚本怎么写,谢谢大神帮忙
网页有一个下拉框控制显示记录的行数,默认是10行。我现在有一款软件可以自己添加JavaScript脚本来控制下拉框显示记录(当鼠标点击这个下拉框时触发)我需要脚本显示最大行数(如有30条就显示30条,50条就50条)其他选项不需要.这个下拉框的HTML代码如下 ``` <SELECT style="MARGIN: 5px 4px 0px; FONT-FAMILY: 宋体" id=an_s onchange=s_onchange(this.id,this.value)><OPTION value=1> 1</OPTION><OPTION value=2> 2</OPTION><OPTION value=3> 3</OPTION><OPTION value=4> 4</OPTION><OPTION value=5> 5</OPTION><OPTION value=6> 6</OPTION><OPTION value=7> 7</OPTION><OPTION value=8> 8</OPTION><OPTION value=9> 9</OPTION><OPTION selected value=10>10</OPTION><OPTION value=11>11</OPTION><OPTION value=12>12</OPTION><OPTION value=13>13</OPTION><OPTION value=14>14</OPTION><OPTION value=15>15</OPTION><OPTION value=16>16</OPTION><OPTION value=17>17</OPTION><OPTION value=18>18</OPTION><OPTION value=19>19</OPTION><OPTION value=20>20</OPTION></SELECT> ``` 谢谢了,我水平有限,如果要举例用ID,方法什么的就用我提供的名字,要不我就糊涂了
js select 多级联动 动态显示option
![图片说明](https://img-ask.csdn.net/upload/201912/17/1576546969_658423.jpg) 出题章节后面的下拉框里面选中的值,在其他的下拉列表中剔除 例如,在第一个select选中Java,其余的都不显示Java选项,包括新添加的部分 或者说在点击保存的时候校验一下select的选中值不能有重复的,如果有就提示用户哪几个重复 代码部分如下 ```vue <el-dialog :title="titleDialog" :visible="dialogFormSection" :before-close="cancelSection" width="1000px"> <el-form :model="formSection" :rules="sectionRules" ref="formSection"> <el-form-item label="选择题型:" :label-width="labelWidth" prop="questionType"> <el-select v-model="formSection.questionType" @change="selectQuestionType"> <el-option v-for="item in questionTypeOptions" :key="item.id" :label="item.name" :value="item.id"></el-option> </el-select> </el-form-item> <el-form-item label="部分名称:" :label-width="labelWidth" prop="sectionName"> <el-input v-model="formSection.sectionName" style="width: 500px"></el-input> </el-form-item> <el-form-item label="总题目数量:" :label-width="labelWidth" prop="questionScore" id="allQuestion-content"> <span>{{allQuestionNum}}</span> <span style="margin-left: 50px"> 每题分数 <el-input v-model="formSection.questionScore" style="width: 80px;margin-left: 10px"></el-input> 分 </span> <span style="margin-left: 50px">总分数:{{allScore}}分</span> <el-button type="text" style="float: right" @click="addProblemRules">添加出题章节</el-button> </el-form-item> <div v-for="(item,index) in sectionData" :key="item.id" class="addSection-content"> <div class="content"> <div style="margin-top: 10px"> {{index+1}}、出题章节(多选): </div> </div> <div class="content"> <el-select style="width: 170px" multiple collapse-tags v-model="item.repositorySectionIdList" @change="changeRepositorySectionId(item.repositorySectionIdList, index)"> <el-option v-for="item1 in courseChapterOptions" :key="item1.id" :value="item1.id" :label="item1.name"></el-option> </el-select> </div> <div class="content"><div style="margin-top: 10px">出题数量:{{item.partStrategyQuestionNum}}</div></div> <div class="content" v-for="(item2,index2) in item.automaticRuleDifficultList" :key="index2"> <span> {{item2.difficultName}} <el-input class="difficult-content" v-model.number="item2.difficultNum"></el-input>/ <span v-for="(item3,index3) in sectionQuestionArr[index]" :key="index3" >{{(item3.difficult === item2.diffcultType) ? item3.quantity : ''}}</span> </span> </div> <div class="content"><el-button type="text" @click="deleteChapter(item,index)">删除</el-button></div> </div> </el-form> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitSection">保 存</el-button> <el-button @click="cancelSection">取 消</el-button> </div> </el-dialog> addProblemRules(){ this.$refs.formSection.validate((valid) => { if(valid){ //把请求回来的难度list放到sectionData中,用于显示 // for(let i=0,len=(this.sectionData.length)+1;i<len;i++){ this.automaticRuleDifficultList.forEach(e=>e.difficultNum = 0); this.sectionData.push({ //由于vue数据双向绑定问题,automaticRuleDifficultList会动态改变,不能区分数组项 //进行转换 automaticRuleDifficultList:JSON.parse(JSON.stringify(this.automaticRuleDifficultList)), }) let tempArr = new Array(); for(let i=1;i<6;i++){ let obj = Object({quantity: 0, difficult: i}); tempArr.push(obj); } this.sectionQuestionArr.push(tempArr); } }) }, ```
asp.net入门,求大神帮忙!控件的内容传输问题。
操作步骤: 1 填写用户资料: ![图片说明](https://img-ask.csdn.net/upload/201512/11/1449797878_173352.jpg) 2 点击“保存”按钮,则系统保存该用户资料,并在下方“用户列表”中加入新增用户信息: ![图片说明](https://img-ask.csdn.net/upload/201512/11/1449797957_350077.jpg) 可以连续填写并新增用户,用户列表应实时刷新(总是显示当前已新增的全部用户)。 3 点选用户列表,选择某一用户: ![图片说明](https://img-ask.csdn.net/upload/201512/11/1449797970_307955.jpg) 则“用户资料”一栏应更新为相应用户的资料: 4 点击“删除”按钮可删除“用户列表”当前选项用户;删除后,“用户列表”和“用户资料”应作更新; 点击“删除全部”按钮将删除所有用户信息,删除后,“用户列表”和“用户资料”应作更新。 ![图片说明](https://img-ask.csdn.net/upload/201512/11/1449798008_63169.jpg) 页面防呆:中文名不可重复;英文名不可重复;若重复,应提示用户,并拒绝新增。 注:本作业中不允许使用静态变量 在上方的控件输入已经弄好了,但是第三步点击下拉框不通知textarea同时显示对应的用户信息怎么弄啊?求帮帮忙!谢谢。
再次点击下箭头的时候怎么使二级菜单移除?
``` function combox(json){ var obj=$("#"+json.id);//保存下拉列表DIV控件 obj.children().hide(); //判断json参数是否传入了可选参数 var backgroundColor=json.backgroundColor==null ? "#e0e0e0": json.backgroundColor; var fontSize=json.fontSize==null ? "14px": json.fontSize; var fontFamily=json.fontFamily==null ? "黑体": json.fontFamily; var color=json.color==null ? "#000000": json.color; //var order=json.order==null ? "asc": json.order; obj.css({ "height":json.height+"px", "width":json.width+"px", "background-color":backgroundColor, "font-size":fontSize+"px", "font-family":fontFamily, "color":color, "border-radius":"3px", "border":"solid 1px #969696", "box-shadow":"#444444 0 1px 1px 0", "cursor":"pointer", "-webkit-user-select":"none", }); //向列表图层添加两个DIV obj.append("<div id='comboxLeft'>"); obj.append("<div id='comboxRight'>"); //设置新添DIV的CSS样式 var comboxLeft=$("#comboxLeft"); var comboxRight=$("#comboxRight"); var comboxIMG=$("#comboxIMG"); comboxLeft.css({ "height":"100%", "width":"169px", "float":"left", "line-height":json.height+"px", "text-indent":"10px", "border-right":"solid 1px #969696", "cursor":"pointer", "-webkit-user-select":"none", }); comboxRight.css({ "height":"100%", "width":"30px", "float":"left", "cursor":"pointer", "-webkit-user-select":"none", }); //把左边DIV内容设成第一个选项的内容 comboxLeft.text(obj.children("a:eq(0)").text()); //给右边DIV添加图片 comboxRight.append("<img id='comboxIMG' src='img/jiantou.png'>"); $("#comboxRight img").css({ "margin-top":"3px", "margin-left":"3px" }) //为下拉列表添加点击事件 obj.click(function(){ //删除弹出列表DIV图层 $("#comboxList").remove(); //添加弹出列表DIV图层 obj.after("<div id='comboxList'>"); //获取combox顶点坐标 var x=obj.offset().top; var y=obj.offset().left; //设置弹出列表DIV图层位置及样式 $("#comboxList").css({ "position":"absolute", "top":y+json.height+"px", "left":x+"px", "z-index":1, "width":json.width+"px", "border-right":"solid 1px #969696", "border-left":"solid 1px #969696", "border-bottom":"solid 1px #969696", "line-height":json.height+"px", "text-indent":"10px", "font-size":fontSize, "cursor":"pointer", "-webkit-user-select":"none", }); //clone()克隆 $("#comboxList").append(obj.children("a").clone());//想弹出的列表项添加内容 //$("$comboxList").children("a").show();//显示A标签 //姜a标签设置成block模型 $("#comboxList").children("a").css({ "display":"block" }); //为列表项添加点击事件 $("#comboxList").children("a").click(function(){ $("#comboxLeft").text($(this).text()); //删除列表图层 $("#comboxList").remove(); }); //为鼠标添加移入事件 $("#comboxList").children("a").mouseover(function(){ $(this).css({ "background-color":"#f0f0f0", }); }); //为鼠标添加移出事件 $("#comboxList").children("a").mouseout(function(){ $(this).css({ "background-color":"#ffffff", }); }); }); $(document).click(function(event){ var id=event.target.id; if(id=="kungfo"||id=="comboxLeft"||id=="comboxRight"||id=="comboxIMG"){ return; }else{ $("#comboxList").remove(); } }) }; ``` ![图片说明](https://img-ask.csdn.net/upload/201609/06/1473157650_204777.png) 有网友是[这样这样](http://www.dreawer.com/question/29224d8a2c964e5da081f7e7ddd7ef44#b52e785efdd94bfaa205eadf8dcf1b90 "答案")说的,不知道是对是错!
jQuery上传插件Uploadify 3.2在.NET下的详细例子
项目中要使用Uploadify 3.2来实现图片上传并生成缩略通的功能,特此记下来,以供各位参考! Uploadify下载地址:http://www.uploadify.com/download/ 下载下来解压后估计里面很多文件,其实有用的也就jquery.uploadify.min.js、uploadify.css、uploadify.swf和uploadify-cancel.png这四个文件。你还得下载jQuery库,我这里用的是jquery-1.7.2.min.js,另外和大多数JQ插件一样,同时也需要swfobject.js这个插件,我的是2.2的版本,东西都准备好了,那下面就开始。 前端界面: [html] view plain copy <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="jqUploadify._Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>无标题页</title> <link href="scripts/uploadify.css" rel="stylesheet" type="text/css" /> <link href="scripts/default.css" rel="stylesheet" type="text/css" /> <script src="scripts/jquery-1.7.2.min.js" type="text/javascript"></script> <script src="scripts/swfobject.js" type="text/javascript"></script> <script src="scripts/jquery.uploadify.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function(){ $("#file_upload").uploadify({ //开启调试 'debug' : false, //是否自动上传 'auto':false, 'buttonText':'选择照片', //flash 'swf': "scripts/uploadify.swf", //文件选择后的容器ID 'queueID':'uploadfileQueue', 'uploader':'scripts/upload.ashx', 'width':'75', 'height':'24', 'multi':false, 'fileTypeDesc':'支持的格式:', 'fileTypeExts':'*.jpg;*.jpge;*.gif;*.png', 'fileSizeLimit':'1MB', 'removeTimeout':1, //返回一个错误,选择文件的时候触发 'onSelectError':function(file, errorCode, errorMsg){ switch(errorCode) { case -100: alert("上传的文件数量已经超出系统限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"个文件!"); break; case -110: alert("文件 ["+file.name+"] 大小超出系统限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!"); break; case -120: alert("文件 ["+file.name+"] 大小异常!"); break; case -130: alert("文件 ["+file.name+"] 类型不正确!"); break; } }, //检测FLASH失败调用 'onFallback':function(){ alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。"); }, //上传到服务器,服务器返回相应信息到data里 'onUploadSuccess':function(file, data, response){ //alert(data); } }); }); function doUplaod(){ $('#file_upload').uploadify('upload','*'); } function closeLoad(){ $('#file_upload').uploadify('cancel','*'); } </script> </head> <body> <table width="704" border="0" align="center" cellpadding="0" cellspacing="0" id="__01"> <tr> <td align="center" valign="middle"> <div id="uploadfileQueue" style="padding: 3px;"> </div> <div id="file_upload"> </div> </td> </tr> <tr> <td height="50" align="center" valign="middle"> <img alt="" src="images/BeginUpload.gif" width="77" height="23" onclick="doUplaod()" style="cursor: hand" /> <img alt="" src="images/CancelUpload.gif" width="77" height="23" onclick="closeLoad()" style="cursor: hand" /> </td> </tr> </table> </body> </html> 后端的Handler: [csharp] view plain copy using System; using System.Collections; using System.Data; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using System.Xml.Linq; using System.Web.SessionState; using System.IO; namespace jqUploadify.scripts { /// <summary> /// $codebehindclassname$ 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class upload : IHttpHandler, IRequiresSessionState { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Charset = "utf-8"; HttpPostedFile file = context.Request.Files["Filedata"]; string uploadPath = context.Server.MapPath("..\\uploads\\"); if (file != null) { if (!Directory.Exists(uploadPath)) { Directory.CreateDirectory(uploadPath); } file.SaveAs(uploadPath + file.FileName); //生成缩略图 MakeThumbnail(uploadPath + file.FileName, uploadPath + "\\s\\" + file.FileName, 80, 80); } } private void MakeThumbnail(string sourcePath, string newPath, int width, int height) { System.Drawing.Image ig = System.Drawing.Image.FromFile(sourcePath); int towidth = width; int toheight = height; int x = 0; int y = 0; int ow = ig.Width; int oh = ig.Height; if ((double)ig.Width / (double)ig.Height > (double)towidth / (double)toheight) { oh = ig.Height; ow = ig.Height * towidth / toheight; y = 0; x = (ig.Width - ow) / 2; } else { ow = ig.Width; oh = ig.Width * height / towidth; x = 0; y = (ig.Height - oh) / 2; } System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight); System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap); g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; g.Clear(System.Drawing.Color.Transparent); g.DrawImage(ig, new System.Drawing.Rectangle(0, 0, towidth, toheight), new System.Drawing.Rectangle(x, y, ow, oh), System.Drawing.GraphicsUnit.Pixel); try { bitmap.Save(newPath, System.Drawing.Imaging.ImageFormat.Jpeg); } catch (Exception ex) { throw ex; } finally { ig.Dispose(); bitmap.Dispose(); g.Dispose(); } } public bool IsReusable { get { return false; } } } } 这样我们就是实现图片上传至uploads,生成的缩略图(这里设为80*80)存放在uploads下面的s文件夹中,是不是很简单呢!当然实际使用过程你还可能碰到一下的问题: 1、在火狐下session出现丢失的情况,可以参考这里:http://www.cnblogs.com/akingyao/archive/2012/09/04/2670794.html 2、IE9出现了按钮不能点击的问题,可以参考这里:http://www.uploadify.com/forum/#/discussion/9155/uploadify-version-3-2-does-not-work-in-ie9/p1 最后贴一个Uploadify参数说明: Uploadify Version 3.2 Options选项设置 auto 选择文件后自动上传 buttonClass 给“浏览按钮”加css的class样式 buttonCursor 鼠标移上去形状:arrow箭头、hand手型(默认) buttonImage 鼠标移上去变换图片 buttonText 按钮文字 checkExisting 在目录中检查文件是否已上传成功(1 ture,0 false) debug 是否显示调试框(默认不显示false) fileObjName 设置一个名字,在服务器处理程序中根据该名字来取上传文件的数据。默认为Filedata,$tempFile = $_FILES['Filedata']['tmp_name'] fileSizeLimit 设置允许上传文件最大值B, KB, MB, GB 比如:'fileSizeLimit' : '20MB' fileTypeDesc 选择的文件的描述。这个字符串出现在浏览文件对话框中文件类型下拉框处。默认:All Files fileTypeExts 允许上传的文件类型。格式:'fileTypeExts' : '*.gif; *.jpg; *.png' formData 附带值,需要通过get or post传递的额外数据,需要结合onUploadStart事件一起使用 height “浏览按钮”高度px itemTemplate <itemTemplate>节点表示显示的内容。这些内容中也可以包含绑定到控件DataSource属性中元素集合的数据。 method 上传方式。默认:post multi 选择文件时是否可以【选择多个】。默认:可以true overrideEvents 不执行默认的onSelect事件 preventCaching 随机缓存值 默认true ,可选true和false.如果选true,那么在上传时会加入一个随机数来使每次的URL都不同,以防止缓存.但是可能与正常URL产生冲突 progressData 进度条上显示的进度:有百分比percentage和速度speed。默认百分比 queueID 给“进度条”加背景css的ID样式。文件选择后的容器ID queueSizeLimit 允许多文件上传的数量。默认:999 removeCompleted 上传完成后队列是否自动消失。默认:true removeTimeout 上传完成后队列多长时间后消失。默认 3秒 需要:'removeCompleted' : true,时使用 requeueErrors 队列上传出错,是否继续回滚队列,即反复尝试上传。默认:false successTimeout 上传超时时间。文件上传完成后,等待服务器返回信息的时间(秒).超过时间没有返回的话,插件认为返回了成功。 默认:30秒 swf swf文件的路径,本文件是插件自带的,不可用其它的代替.本参数不可省略 uploader 上传处理程序URL,本参数不可省略 uploadLimit 限制总上传文件数,默认是999。指同一时间,如果关闭浏览器后重新打开又可上传。 width “浏览按钮”宽度px Events 事件 onCancel 当取消一个上传队列中的文件时触发,删除时触发 onClearQueue 清除队列。当'cancel'方法带着*参数时,也就是说一次全部取消的时候触发.queueItemCount是被取消的文件个数(另外的按钮) onDestroy 取消所有的上传队列(另外的按钮) onDialogClose 当选择文件对话框关闭时触发,不论是点的'确定'还是'取消'都会触发.如果本事件被添加进了'overrideEvents'参数中,那么如果在选择文件时产生了错误,不会有错误提示框弹出 onDialogOpen 当选择文件框被打开时触发,没有传过来的参数 onDisable 关闭上传 onEnable 开启上传 onFallback 检测FLASH失败调用 onInit 每次初始化一个队列时触发 onQueueComplete 当队列中的所有文件上传完成时触发 onSelect 当文件从浏览框被添加到队列中时触发 onSelectError 选择文件出错时触发 onSWFReady flash准备好时触发 onUploadComplete当一个文件上传完成时触发 onUploadError 当文件上传完成但是返回错误时触发 onUploadProgress上传汇总 onUploadStart 一个文件上传之间触发 onUploadSuccess 每个上传完成并成功的文件都会触发本事件 Methods 方法 cancel 取消一个上传队列 destroy 取消所有上传队列 disable 禁止点击“浏览按钮” settings 返回或修改一个 uploadify实例的settings值 stop 停止当前的上传并重新添加到队列中去 upload 上传指定的文件或者所有队列中的文件 最后是DEMO的下载地址:http://download.csdn.net/detail/wangqiuyun/566551
从网上找的MFC实现excel导入list控件
void CTSKYDlg::OnBnClickedOpenButton() { // TODO: Add your control notification handler code here CFileDialog dlg( TRUE, //TRUE或FALSE。TRUE为打开文件;FALSE为保存文件 _T("xls"), //为缺省的扩展名"FileList", //为显示在文件名组合框的编辑框的文件名,一般可选NULL NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, //为对话框风格,一般为OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,即隐藏只读选项和覆盖已有文件前提示。 _T("Excel 文件(*.xls)|*.xls||") //为下拉列表枢中显示文件类型 ); dlg.m_ofn.lpstrTitle = _T("导入数据"); if (dlg.DoModal() != IDOK) return; CString strFilePath; //获得文件路径名 strFilePath = dlg.GetPathName(); //判断文件是否已经存在,存在则打开文件 DWORD dwRe = GetFileAttributes(strFilePath); if ( dwRe != (DWORD)-1 ) { //ShellExecute(NULL, NULL, strFilePath, NULL, NULL, SW_RESTORE); } else return; CDatabase db;//数据库库需要包含头文件 #include <afxdb.h> CString sDriver =_T("MICROSOFT EXCEL DRIVER (*.XLS)"); // Excel驱动 CString sSql,arr[3]; sSql.Format(_T("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s"),sDriver, strFilePath, strFilePath); if(!db.OpenEx(sSql,CDatabase::noOdbcDialog))//连接数据源DJB.xls { MessageBox(_T("打开EXCEL文件失败!"),_T("错误")); return; } //打开EXCEL表 CRecordset pset(&db); m_tsky_list.DeleteAllItems(); AfxMessageBox(_T("OK")); sSql.Format(_T("SELECT 学号,姓名,成绩 FROM DSO_DX")); pset.Open(CRecordset::forwardOnly,sSql,CRecordset::readOnly); while(!pset.IsEOF()) { pset.GetFieldValue(_T("学号"),arr[0]);//前面字段必须与表中的相同,否则出错。 pset.GetFieldValue(_T("姓名"),arr[1]); pset.GetFieldValue(_T("成绩"),arr[2]); int count = m_tsky_list.GetItemCount();//插入到ListCtrl中 m_tsky_list.InsertItem(count,arr[0]); m_tsky_list.SetItemText(count,1,arr[1]); m_tsky_list.SetItemText(count,2,arr[2]); pset.MoveNext(); } db.Close(); MessageBox(_T("Excel数据成功导入系统!"),_T("导入成功")); } // // // // // // 问题 运行后,点击按钮导入文件后 程序执行到 sSql.Format(_T("SELECT 学号,姓名,成绩 FROM DSO_DX")); 报错!提示找不到DSO_DX这个表 请问这个表需要自己建吗还是excel自带的, 如果需要建立 要在那个数据库里建,给个参考文献也好 我用过sql server 数据库对这个不熟
Ajax无刷新提交表单并搜索数据库
![![图片说明](https://img-ask.csdn.net/upload/201603/22/1458634248_267260.png)图片说明](https://img-ask.csdn.net/upload/201603/22/1458634237_360971.png) 大家看图也能明白我的意思。页面中包含两个框架,下面的框架就是主要的问题所在。两个下拉列表联动已经会做了,现在想要点击“确定”后提交表单并在下面显示出数据库查询结果,但同时下拉列表不能刷新,保持选择的项目状态。目前点击按钮后会出现第二图的情况,恶心死我了。 我参考Shelley Powershot的《JavaScript学习指南》,可是却没能达到我想要的效果。提交表单是大概只能用post方法了吧……求大神相助,可以提供思路,提供参考文献或者指正我的代码 sd_help.php如下: ``` <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="style.css" type="text/css" rel="stylesheet"> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> </head> <body class="font"> <div align="center"><font size="4px">选择您需要的帮助</font></div><br> <form name="search" action="search_db.php" method="post"> <div align="center"> <select name="domain" id="domain" onChange="redirec(document.search.domain.options.selectedIndex)"> <option selected value="0">请选择</option> <option value="1">体育</option> <option value="2">艺术</option> <option value="3">文史</option> </select>&nbsp;&nbsp;&nbsp;&nbsp; <select name="items" id="items"> <option value="0" selected>请选择</option> </select>&nbsp;&nbsp; <input type="submit" value="确定" id="submitButton"/> </form> </div> <script language="javascript"> //获取一级菜单长度 var groups = document.search.domain.options.length; var group = new Array(groups); //把一级菜单都设为数组 for (i=0; i<groups; i++) { group[i] = new Array();} //定义基本选项 group[0][0] = new Option("请选择", "0"); group[1][0] = new Option("足球", "1"); group[1][1] = new Option("篮球", "2"); group[1][2] = new Option("乒乓球", "3"); group[2][0] = new Option("歌唱", "4"); group[2][1] = new Option("舞蹈", "5"); group[2][2] = new Option("乐器", "6"); group[3][0] = new Option("小说", "7"); group[3][1] = new Option("散文", "8"); group[3][2] = new Option("诗词", "9"); //联动函数 function redirec(x) { var temp = document.search.items; for (i=0;i<group[x].length;i++) { temp.options[i]=new Option(group[x][i].text,group[x][i].value);} temp.options[0].selected=true; } //<![CDATA[ //全局变量 var xmlHttpObj; function catchEvent(eventObj,event,eventHandler){ if(eventObj.addEventListener){ eventObj.addEventListener(event,eventHandler,false); }else if(eventObj.attachEvent){ event="on"+event; eventObj.attachEvent(event,eventHandler); } } catchEvent(window,"load",function(){ //document.getElementById("helps").style.display="block"; document.getElementById("items").onchange=populateList; //document.getElementById("submitButton").style.display="none"; }); //创建XHR对象 function getXmlHttp(){ var xmlhttp=null; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); if(xmlhttp.overrideMimeType){ xmlhttp.overrideMimeType('text/html'); } }else if(window.ActiveObject){ xmlhttp=new ActiveObject("Microsoft.XMLHTTP"); } return xmlhttp; } //准备并发送XHR请求 function populateList(){ var items=document.getElementById("items").value; var url='search_db.php'; var qry="items="+items; //如果xmlHttpObj为空 if(!xmlHttpObj) xmlHttpObj=getXmlHttp(); if(!xmlHttpObj) return; xmlhttp.open('POST',url,true); xmlhttp.onreadystatechange=getItems; xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlhttp.send(qry); } //处理返回的数据 function getItems(){ if(xmlHttpObj.readyState==4&&xmlHttpObj.status==200){ document.getElementById('helps').innerHTML=xmlHttpObj.responseText; }else if(xmlHttpObj.readyState==4&&xmlHttpObj.status!=200){ document.getElementById('helps').innerHTML='请求出错误!'; } } //]]> </script> <div align="center"> <table><tr><td id="helps"></td></tr></table> </div> </body> ``` search_db.php如下(暂为演示,所以没有执行数据库查询): ``` <?php if(empty($_QUEST['items'])){ echo "未传入items值!悲剧!"; } else echo ($_QUEST['items']); ?> ```
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, ...
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
我是Leader,我被降职成了普通员工,HR说:公司要梯队年轻化
“BAT也不是完美的避风港哇~”这是老刘说的,老刘是BAT某家的一个Leader,职级约类似T7(T族一般是技术族,管理是M族),在BAT某家呆了11年,但是在整个互联网行业推崇,梯队年轻化的氛围时,老刘所在的业务线,产品数据并不是太好看。于是前段时间被约谈了,只是从Leader变成了一线技术,薪水没太大变化,但是已经不是管理层队伍了,团队里的更年轻的人成了他的汇报对象,在这种职场角色反转的事情,...
计算机专业的书普遍都这么贵,你们都是怎么获取资源的?
介绍几个可以下载编程电子书籍的网站。 1.Github Github上编程书资源很多,你可以根据类型和语言去搜索。推荐几个热门的: free-programming-books-zh_CN:58K 星的GitHub,编程语言、WEB、函数、大数据、操作系统、在线课程、数据库相关书籍应有尽有,共有几百本。 Go语言高级编程:涵盖CGO,Go汇编语言,RPC实现,Protobuf插件实现,Web框架实...
小白学 Python 爬虫(25):爬取股票信息
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(...
这三名男子靠开加密矿池获得7.22 亿美元,却不兑现收益拿去奢侈挥霍……
来源 /cointelegraph编译/火火酱责编 / Carol出品 / 区块链大本营(blockchain_camp)根据美国司法部12月10日发布的声明,美国新泽西州当局宣布...
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我...
2019年还剩1天,我从外包公司离职了
这日子过的可真快啊,2019年还剩1天,外包公司干了不到3个月,我离职了
只因接了一个电话,程序员被骗 30 万!
今天想给大家说一个刚刚发生在我身边的一起真实的诈骗经历,我的朋友因此被骗走30万。注:为了保护当事人隐私,部分情节进行了修改。1平安夜突来的电话开始以为就像普通的诈骗一样,想办法让你把钱...
一名大专同学的四个问题
【前言】   收到一封来信,赶上各种事情拖了几日,利用今天要放下工作的时机,做个回复。   2020年到了,就以这一封信,作为开年标志吧。 【正文】   您好,我是一名现在有很多困惑的大二学生。有一些问题想要向您请教。   先说一下我的基本情况,高考失利,不想复读,来到广州一所大专读计算机应用技术专业。学校是偏艺术类的,计算机专业没有实验室更不用说工作室了。而且学校的学风也不好。但我很想在计算机领...
复习一周,京东+百度一面,不小心都拿了Offer
京东和百度一面都问了啥,面试官百般刁难,可惜我全会。
Java 14 都快来了,为什么还有这么多人固守Java 8?
从Java 9开始,Java版本的发布就让人眼花缭乱了。每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,...
达摩院十大科技趋势发布:2020 非同小可!
【CSDN编者按】1月2日,阿里巴巴发布《达摩院2020十大科技趋势》,十大科技趋势分别是:人工智能从感知智能向认知智能演进;计算存储一体化突破AI算力瓶颈;工业互联网的超融合;机器间大规模协作成为可能;模块化降低芯片设计门槛;规模化生产级区块链应用将走入大众;量子计算进入攻坚期;新材料推动半导体器件革新;保护数据隐私的AI技术将加速落地;云成为IT技术创新的中心 。 新的画卷,正在徐徐展开。...
面试官刁难:Java字符串可以引用传递吗?
老读者都知道了,六年前,我从苏州回到洛阳,抱着一幅“海归”的心态,投了不少简历,也“约谈”了不少面试官,但仅有两三个令我感到满意。其中有一位叫老马,至今还活在我的手机通讯录里。他当时扔了一个面试题把我砸懵了:“王二,Java 字符串可以引用传递吗?” 我当时二十三岁,正值青春年华,从事 Java 编程已有 N 年经验(N &lt; 4),自认为所有的面试题都能对答如流,结果没想到啊,被“刁难”了—...
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
讲真,这两个IDE插件,可以让你写出质量杠杠的代码
周末躺在床上看《拯救大兵瑞恩》 周末在闲逛的时候,发现了两个优秀的 IDE 插件,据说可以提高代码的质量,我就安装了一下,试了试以后发现,确实很不错,就推荐给大家。 01、Alibaba Java 代码规范插件 《阿里巴巴 Java 开发手册》,相信大家都不会感到陌生,其 IDEA 插件的下载次数据说达到了 80 万次,我今天又贡献了一次。嘿嘿。 该项目的插件地址: https://github....
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据显示去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨求实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
(总结)阿里面试问了ArrayList,都问了啥?
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
立即提问