夕口技術錄

專業上的小常識,備而用之~

Monthly Archives: 十一月 2010

[Ajax] – 實作範例

<head>
<script language="JavaScript" src="js/ajax_fun.js"></script>
<script language=’javascript’>

function search_ipowner(search_id)
{
http_request = getXHR();
http_request.open(‘GET’,’./?action=module&fun=<!–{$status.path.fun}–>&permit=search&ip=’+document.getElementById(“ip"+search_id).value,false); <- 同步處理
http_request.send(null);
info = http_request.responseText;
xmlDoc = getXDOM(info); <- 回傳值為 xml 格式接法

echo “
<data>
<name>".htmlspecialchars($record[“record"][“name"])."</name>
</data>
“;

if(info!="")
{
try{
document.getElementById(“name"+search_id).value = xmlDoc.getElementsByTagName(“name")[0].childNodes[0].nodeValue;
}
catch(e)
{
document.getElementById(“ipowner_chk").innerHTML = “<br />無任何對應資料!!!";
}
}//if
else document.getElementById(“ipowner_chk").innerHTML = “<br />無任何對應資料!!!";
} // function search_ipowner

function search_ifname(search_id,ifname_enc)
{
http_request = getXHR();
http_request.open(‘GET’,’./?action=module&fun=<!–{$status.path.fun}–>&permit=search&deviceid=’+document.getElementById(“deviceid"+search_id).value+’&sno=’+search_id+’&ifname_enc=’+ifname_enc,false);
http_request.send(null);
info = http_request.responseText; <- 回傳值為 Data 格式接法
if(info!="")
{
try{
document.getElementById(‘ifname_option’+search_id).innerHTML = info;
}
catch(e)
{
document.getElementById(“ifname_option"+search_id).innerHTML = “&nbsp;無任何對應資料!!!";
}
}
else document.getElementById(“ifname_option"+search_id).innerHTML = “&nbsp;無任何對應資料!!!";
} // function search_ifname
</head>

<body>
<input type="text" size="18″ name="ip<!–{$record[loop].sno}–>" id="ip<!–{$record[loop].sno}–>" value="<!–{$record[loop].ip}–>">&nbsp;<input type="button" value="查詢IP保管人" onclick="javascript: search_ipowner(<!–{$record[loop].sno}–>);"><span id="ipowner_chk"></span>

<select name="deviceid<!–{$record[loop].sno}–>" id="deviceid<!–{$record[loop].sno}–>" onclick="javascript: search_ifname(<!–{$record[loop].sno}–>,'<!–{$record[loop].ifname_enc}–>’);">
<option value=""></option>
<!–{section name=nd loop=$rt.network_device}–>
<option value="<!–{$rt.network_device[nd].id}–>"<!–{if $rt.network_device[nd].id == $record[loop].deviceid}–> selected<!–{/if}–>><!–{$rt.network_device[nd].name}–></option>
<!–{/section}–>
</select>
<span id="ifname_option<!–{$record[loop].sno}–>"></span>
<script language=’javascript’>search_ifname(<!–{$record[loop].sno}–>,'<!–{$record[loop].ifname_enc}–>’);</script>
</body>
閱讀全文