智能查询前台代码
<script type="text/javascript" language="javascript">
var xmlHttp;
var completeDiv;
var inputField;
var nameTable;
var nameTableBody;
var flag=false;
function insider(name,id){
this.name = name;
this.id = id;
}
var insiders = new Array();
function createXMLHttpRequest(){
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function setflag(){
flag = true;
}
function DisSelect(){
if(flag==false)
document.getElementById("popup").style.display="none";
}
function initVars() {
inputField = document.getElementById("ctl00$ContentPlaceHolder1$OfferEditPart$_owner");
nameTable = document.getElementById("name_table");
completeDiv = document.getElementById("popup");
nameTableBody = document.getElementById("name_table_body");
document.getElementById("popup").style.display="block";
}
function findNames() {
if (event.keyCode == 13)
{ initVars();
if (inputField.value.length > 0)
{
createXMLHttpRequest();
var url = "../GetInsider.aspx?name=" + inputField.value;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = callback;
xmlHttp.send(null);
}
else
{
clearNames();
}
}
}
function callback(){
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200)
{
try
{
var test = document.getElementById("a");
// var name = xmlHttp.responseXML.getElementsByTagName("name")[0].firstChild.data;
}
catch(e)
{
document.getElementById("popup").style.display="none";
clearNames();
}
setNames(xmlHttp.responseXML.getElementsByTagName("insiders"));
}
else if (xmlHttp.status == 204)
{
clearNames();
}
}
}
function setNames(the_names){
clearNames();
var size = the_names[0].childNodes.length;
if (size > 0)
{
setOffsets();
}
var row,cell,spans;
for (var i = 0; i < size; i++) {
var nextNode = the_names[0].childNodes[i].childNodes[0].childNodes[0].data;
var id = the_names[0].childNodes[i].childNodes[1].childNodes[0].data;
insiders[insiders.length] = new insider(nextNode,id);
row =document.createElement("tr");
cell =document.createElement("td");
cell.onmouseout = function() {this.style.backgroundColor='#FFFFFF'; flag=false;};
cell.onmouseover = function() {this.style.backgroundColor='#E0E0E0';flag=true;};
cell.setAttribute("bgcolor","#FFFFFF");
cell.setAttribute("className","in_textboxmedium");
cell.setAttribute("border","0");
//cell.setAttribute("onmouseover","setflag()");
cell.onclick = function() { populateName(this); };
var txtName = document.createTextNode(nextNode);
cell.appendChild(txtName);
row.appendChild(cell);
nameTableBody.appendChild(row);
}
}
function setOffsets() {
var end = inputField.offsetWidth;
var left = calculateOffsetLeft(inputField);
var top = calculateOffsetTop(inputField) + inputField.offsetHeight;
completeDiv.style.border = "black 1px solid";
completeDiv.style.left = left + "px";
completeDiv.style.top = top + "px";
nameTable.style.width="200px";
}
function calculateOffsetLeft(field) {
return calculateOffset(field, "offsetLeft");
}
function calculateOffsetTop(field) {
return calculateOffset(field, "offsetTop");
}
function calculateOffset(field, attr) {
var offset = 0;
while(field) {
offset += field[attr];
field = field.offsetParent;
}
return offset;
}
function populateName(cell) {
var count = insiders.length;
for(var i = 0; i< count; i++)
{
if (cell.firstChild.nodeValue == insiders[i].name)
{
document.getElementById("ctl00$ContentPlaceHolder1$OfferEditPart$_ownerId").value = insiders[i].id;
break;
}
}
inputField.value = cell.firstChild.nodeValue;
clearNames();
}
function clearNames() {
var ind = nameTableBody.childNodes.length;
for (var i = ind - 1; i >= 0 ; i--) {
nameTableBody.removeChild(nameTableBody.childNodes[i]);
}
completeDiv.style.border = "none";
}
function document.onkeypress()
{
if (event.keyCode == 13)
event.keyCode =0;
}
</script>
<asp:TextBox ID="_owner" runat="server" onblur="DisSelect();" onkeyup="findNames();" ></asp:TextBox>
<div style="position:absolute;top:0;left:0; " id="popup">
<table id="name_table" bgcolor="#FFFAFA" border="0" cellspacing="0" cellpadding="0">
<tbody id="name_table_body"></tbody>
</table>
</div>
后台代码:
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["name"] != null && Request.QueryString["name"].ToString() != string.Empty)
{
string domainAccount = Request.QueryString["name"].ToString();
List<Microsoft.Insider.Model.Insider> insiderUser = BLLOffer.GetInsiderUserByDomainAccount(domainAccount);
Response.ContentType = "text/xml";
Response.Write("<?xml version='1.0' encoding='ISO-8859-1'?>");
Response.Write("<insiders>");
foreach(Microsoft.Insider.Model.Insider insider in insiderUser)
{
Response.Write("<insider><name>" + insider.DomainAccount + "</name>");
Response.Write(" <id>" + insider.ID +"</id></insider>");
}
Response.Write("</insiders>");
Response.End();
}
}
浙公网安备 33010602011771号