Ajaxはデータを動的にロードすることを実現する。
前言:
1.このエッセイはAjaxのダイナミックロードの例を実現しました。
2.netのMVCフレームを使って実現します。
3.この例の重点は前のバックグラウンドで対話し、他の略書き。
開始:
1.コントローラアクションResoultコード(ページを表示するため)
説明:これはデータを示す表です。中のフィールドはあなたの作ったモデルと一致します。
4.1フロントのJavaScriptコード
5.クエリをバックグラウンドに送信し、戻ってきたセットに基づいて再度テーブルに値を割り当てます。
1.このエッセイはAjaxのダイナミックロードの例を実現しました。
2.netのMVCフレームを使って実現します。
3.この例の重点は前のバックグラウンドで対話し、他の略書き。
開始:
1.コントローラアクションResoultコード(ページを表示するため)
/// <summary>
///
/// </summary>
/// <returns></returns>
public ActionResult PhoneSearch(string sql)
{
phoneList= ;
ViewBag.phoneList = phoneList;
return View();
}
2.フロントページの主要コード説明:これはデータを示す表です。中のフィールドはあなたの作ったモデルと一致します。
<table border="1" cellspacing="0" cellpadding="0" class="toLang" id="phoneTable">
<tr>
<th> </th>
<th> </th>
<th> </th>
<th> </th>
<th> </th>
<th> </th>
<th> </th>
</tr>
<tbody id="todeListTBODY">
@if (ViewBag.phoneList != null)
{
foreach (var item in ViewBag.phoneList)
{
number = number + 1;
<tr>
<td>@number</td>
<td>@item.Conpany</td>
<td>@item.Department</td>
<td>@item.Team</td>
<td>@item.Name</td>
<td>@item.Position</td>
<td>@item.PhoneNumber</td>
</tr>
}
}
</tbody>
</table>
3.私の照会条件
<div style="display:block;float:left; width:100%; ">
:
<select class="InputTestStyle" id="company" onclick="initDeptSelect()">
<option>== ==</option>
</select>
:
<select class="InputTestStyle" id="department" onclick="initGroupSelect()">
<option>== ==</option>
</select>
:
<select class="InputTestStyle" id="group" onclick="QueryPhoneNum()">
<option>== ==</option>
</select>
</div>
4.照会条件の初期化(会社の例)4.1フロントのJavaScriptコード
//
window.onunload = initCompanySelect();
// “ ”
function initCompanySelect()
{
$.ajax({
type: 'POST',
url: '/Home/GetCompantListForPhone',
dataType: 'json',
data: { },
success: function (data) {
//1.
// $('#company option').remove();//
$('#company').empty();
$("#company").append($('<option>' + '== ==' + '</option>'));
//2. , 。
for (i = 0; i < data.length;i++)
{
$("#company").append($('<option >' + data[i].Conpany + '</option>'));
}
},
error: function (XMLHttpRequest, textStatus, errorThown) {
alert(" !");
}
})
}
4.2ドロップダウンフレームに対応するアクションResoultコードを初期化する
/// <summary>
///
/// </summary>
/// <returns></returns>
[HttpPost]
public JsonResult GetCompantListForPhone()
{
compantList = ;
return Json(compantList);
}
他の二つのコンボボックスはこの方法で完成しました。条件によって調べられます。次の二つはペアJavaScriptとバックグラウンド方法です。5.クエリをバックグラウンドに送信し、戻ってきたセットに基づいて再度テーブルに値を割り当てます。
//
function QueryPhoneNum()
{
if ($('#group').val() == '== ==')
{
return;
}
number = 0;
$.ajax({
type: 'POST',
url: '/Home/PhoneSearchSubmit',
dataType: 'json',
data: {
company:$('#company').val(),
dept: $('#department').val(),
group: $('#group').val()
},
success: function (phoneList) {
//1.
$('#todeListTBODY tr').remove();
//2. 。
$.each(phoneList, function (index, element) {
number = number + 1;
$('#todeListTBODY').prepend(function (i) {
return "<tr>" +
"<td>" +number +
"<td>" + element.Conpany +
"<td>" + element.Department +
"<td>" + element.Team +
"<td>" + element.Name +
"<td>" + element.Position +
"<td>" + element.PhoneNumber +
"</tr>";
})
})
},
error: function (XMLHttpRequest, textStatus, errorThown) {
alert(" !");
}
})
}
5.1クエリデータに対応するアクションResoult
/// <summary>
///
/// </summary>
/// <returns></returns>
[HttpPost]
public JsonResult PhoneSearchSubmit(string company, string dept, string group)
{
phoneList = ;
return Json(phoneList);
}
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。