ajax 呼び出しを使用してデータベースにアクセスし、ドロップダウンをロードしています。さて、これは、誰かがその方法を考え出したので、私が働いている場所で多くのことを行っていることです.
スーパーバイザーから、新しいページごとにコードをやり直すことなく、複数のページなどで簡単に使用できる ajax 呼び出しを作成するように依頼されました。私のコード:
コントローラ
Function Index(ByVal KovID As String) As JsonResult
Dim db As New Database1Entities
Dim record As New List(Of BodyStyle)
record = (From b In db.BodyStyles Where b.KovID = KovID Select b).ToList
Return Json(record, JsonRequestBehavior.AllowGet)
End Function
JQuery
function ajaxSuccess(record) {
var drop2 = $('#Vehicle_BodyStyle_value');
drop2.get(0).options.length = 0;
drop2.get(0).options[0] = new Option("Please Select One", "-1");
$.each(record, function (index, item) {
drop2.get(0).options[drop2.get(0).options.length] = new Option(item.BodyStyle1, index);
});
}
function ajaxError() {
$('#Vehicle_BodyStyle_value').get(0).options.length = 0;
$('#Vehicle_BodyStyle_value').get(0).options[0] = new Option("Error!", "-1");
alert("Failed to load styles");
}
$('#Vehicle_KovId_value').change(function () {
var kovID = $(this).val();
var drop2 = $('#Vehicle_BodyStyle_value');
if (kovID != null && kovID != '') {
drop2.get(0).options.length = 0;
drop2.get(0).options[0] = new Option('Please Select One', '-1');
$.ajax({
type: "GET",
url: '/Ajax/Index',
async: false,
data: { KovID: kovID },
contentType: "application/json; charset=utf-8",
success: ajaxSuccess,
error: ajaxError
});
}
});
今、私はVB.NETを知りません。実際、同僚がコントローラーを手伝ってくれましたが、彼はこの件についてこれ以上支援するためにここにいるわけではありません。
上司からの私の質問は、どうすればこれを機能させることができるかということです。
ByVal
コントローラー クラスの が に変更された場合、ajax 呼び出しByRef
の行に何かを渡して、data:
このコードを再利用し、書き換えないようにすることはできますか?
どんな助けや説明も大歓迎です。