//潇湘博客
//http://blog.csdn.net/fkedwgwy
//PHP 技术群:37304662
//时间:2010-06-13
//版本 v3.0.0.0
//任意字符、中文与拼音综合查询
//方向键选择option
//优化下拉框显示效果
//jquery超级select插件
$.fn.selectseach = function() {
String.prototype.trim = function() {
return this.replace(/(^s*)|(s*$)/g, “”);
}
//汉字转拼音
function makePy(str) {
if (typeof(str) != “string”) {
return str;
//throw new Error(-1,”需要字符串类型参数!”);
}
var arrResult = new Array();
for (var i = 0, len = str.length; i < len; i++) {
var ch = str.charAt(i);
arrResult.push(checkCh(ch));
}
var resarr = mkRslt(arrResult);
return resarr.join(“”).toLowerCase();
}
function checkCh(ch) {
var uni = ch.charCodeAt(0);
if (uni > 40869 || uni < 19968) return ch; //dealWithOthers(ch);
return (oMultiDiff[uni] ? oMultiDiff[uni] : (strChineseFirstPY.charAt(uni – 19968)));
}
function mkRslt(arr) {
var arrRslt = [“”];
for (var i = 0, len = arr.length; i < len; i++) {
var str = arr[i];
var strlen = str.length;
if (strlen == 1) {
for (var k = 0; k < arrRslt.length; k++) {
arrRslt[k] += str;
}
} else {
var tmpArr = arrRslt.slice(0);
arrRslt = [];
for (k = 0; k < strlen; k++) {
var tmp = tmpArr.slice(0);
for (var j = 0; j < tmp.length; j++) {
tmp[j] += str.charAt(k);
}
arrRslt = arrRslt.concat(tmp);
}
}
}
return arrRslt;
}
var strChineseFirstPY = “这段代码省略”;
var oMultiDiff = {
“40840”: “YK”,
“40863”: “QJG”
};
var teststr;
var selectobj = $(this);
var obj;
var obj1;
var mfont = 12;
var selectleft;
var selecttop;
var selectwidth;
var objid;
var objvalue;
var objhtml;
var inputwidth;
var selectinput = ‘selectinput’,
selectinputname = ‘selectinputname’,
imgselect = ‘imgselect’,
myhtml, objid;
var recno;
var fzrxm1 = “”;
var fzrxm = “”;
var selectid = -1;
var mfocus = 1;
var ij, selectgotoij = -10;
//创建 select div
selectobj.each(function() {
obj = $(this);
var check = obj.attr(‘m’);
//alert(check);
if (check == ‘search’) {
mfont = 12;
selectleft = obj.offset().left;
selecttop = obj.offset().top;
selectwidth = obj.width();
objid = obj.attr(‘id’);
objvalue = obj.val();
objhtml = obj.find(‘option:selected’).text();
teststr = teststr + ‘left=’ + selectleft + ‘and top=’ + selecttop + ‘<br>’;
//浏览器判断
if ($.browser.mozilla) {
inputwidth = selectwidth – 15;
} else {
inputwidth = selectwidth – 18;










