Ajaxでデータベースを接続、更新
1.コード下記
<!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>
<title></title>
<script type ="text/javascript">
function btnClick() {
var xmlhttp = xmlhttp = new ActiveXObject(“Microsoft.XMLHTTP");
if (!xmlhttp) {
alert(“xmlhttpオブジェクトを作成例外!");
return false;
}
var text1 = document.getElementById(“Text1");
xmlhttp.open(“post","GetPrice2.ashx?ts"+text1, false);
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
document.getElementById(“Text2").value = xmlhttp.responseText;
}
else {
alert(“Ajaxはエラーを返します!");
}
}
}
xmlhttp.send();
}
</script>
</head>
<body>
<p>
商品名:<input id="Text1″ type="text" /></p>
<p>
价格:<input id="Text2″ type="text" /></p>
<p>
<input id="Button1″ type="button" value="検索" onclick = “btnClick()"/></p>
</body>
</html>
2.コード下記
<%@ WebHandler Language="C#" Class="GetPrice" %>
using System;
using System.Linq;
using System.Web;
using DataSetProductsTableAdapters;
public class GetPrice : IHttpHandler {
public void ProcessRequest (HttpContext context)
{
context.Response.ContentType = “text/plain";
//context.Response.Write(“Hello World");
string name = context.Request[“text1"];
var data = new PriceTableAdapter().GetDataByName(name);//dataset強制タイプを作成必要
if (data.Count <= 0)
{
context.Response.Write(“none|0");
}
else
{
context.Response.Write(“ok|" + data.Single().Price);
}
}
public bool IsReusable {
get {
return false;
}
}
}