// client : head 쪽에 javascript : chiwoniiAjaxMission
function Read(obj)
{
if(event.keyCode==40) //다운키가 눌리면
{
document.form1.sel1.focus();return; //--포커스를 select로
}
objNode.text = encodeURI(obj.value);
//텍스트박스에서 글자를 읽어 들어와서 encodiing
xmlhttp.open ("Post","MissionServer2.aspx",false);
//비동기, 화면 안바뀌고 하겠다
xmlhttp.send(xmlpara); //비동기로 보내면
var getstr = xmlhttp.responseXML; // 서버 처리 후 받아진다
for(i=0; i< count.length; i++)
{
//--- 핵심 코드는 여기 뿐~!!! server에는 싹 비워!!!
//--글자는 첫글자만 남기고 싹지워!!
//-- 셀렉트에 옵션을 새로 추가하는 방법
var option = new Option();
option.text = getstr.getElementsByTagName("name")[i].childNodes[0].nodeValue;
option.value = getstr.getElementsByTagName("seq")[i].childNodes[0].nodeValue;
document.form1.sel1.add(option);
//---
}
}
//--client : body쪽에는
<select id="sel1" multiple="multiple" style="display:none; width: 152px" onchange="sel1_onclick (sel1)">
</select>
<div id="a">
</div>
//--server 쪽에서는
protected void Page_Load(object sender, EventArgs e)
{
//---입력 -- 원본이고
XmlDocument xmldom = new XmlDocument();
xmldom.Load(Request.InputStream);//텍박의 값을 받아서
string name = xmldom.SelectNodes("PARAMETER").Item(0).SelectSingleNode("DATA").InnerText;//입력
//파라미터 노드여러개중 첫번째꺼의 싱글노드 data의 텍스트를
//디폴트에서 받은 파라미터
//--- 출력
XmlDocument new_xmldom = sqlfunction(name); //쿼리 결과를 얻어서 돔(XML)로 만든다.
//-- 쿼리를 사용해서 새로운 것을 만들지
Response.ContentType = "text/xml;charset=euc-kr"; //반드시 해야함. //강제적으로 첫줄에 넣고
Response.Write(new_xmldom.OuterXml); //두번째 부터 넣는거지.
}
protected XmlDocument sqlfunction(string itname)
{
string sql = "SELECT seq, name, it from BBS where name like @name";
SqlConnection con = new SqlConnection("Data Source=192.168.1.15;Initial Catalog=BoardProject;User ID=sa;Password=1234");
SqlCommand com = new SqlCommand(sql, con);
itname = HttpUtility.UrlDecode(itname);
com.Parameters.AddWithValue("@name", "%"+itname+"%");
con.Open();
SqlDataReader dr = com.ExecuteReader();
//-- START
XmlDocument xmldom = new XmlDocument();
XmlElement root = xmldom.CreateElement("root");
:
:
:
:
//결국 dom을 리턴한다.
}
댓글 영역