これは私の最初のメッセージです。ご協力いただきありがとうございます。ここで大きなミスをおかけして申し訳ありません。ASP.NET MVC5 Select2が動作しません
私はselect2 JQueryオートコンプリートコンボボックスを実装しようとしています。
いくつかのコードをコピーしても間違いはありませんが、編集テキストは通常の編集テキストのように見えますが、Select2として変更されると、JavaScryptは何らかの理由で動作しません。
は、ここに私のコードです:
私indexcshtml内の参照:
<link href="~/Content/css/select2.css" type="text/css" rel="stylesheet" />
<script src="~/Scripts/jquery-3.1.0.js"></script>
<script src="~/Scripts/select2.js"></script>
<script src="~/Scripts/jquery.validate.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="~/Scripts/bootstrap.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>
cyndarelaのようなコンボボックスに変換する必要があります私のテキストボックス!
@using (Html.BeginForm())
{
@Html.TextBoxFor(a => a.SupplierId, new { id = "supplier" }) @Html.ValidationMessageFor(a => a.SupplierId)
<br />
<button type="submit">Submit</button>
}
と私のJavaScrypt終わり :
<script >
$(document).ready(function() {
var pageSize = 20;
var optionListUrl = '@Url.Action("GetProducts", "Purchases")';
//Method which is to be called for populating options in dropdown //dynamically
$('#supplier').select2(
{
ajax: {
delay: 150,
url: optionListUrl,
//url: '/Purchases/GetProducts',
dataType: 'json',
data: function (params) {
params.page = params.page || 1;
return {
searchTerm: params.term,
pageSize: pageSize,
pageNumber: params.page
};
},
processResults: function (data, params) {
params.page = params.page || 1;
return {
results: data.Results,
pagination: {
more: (params.page * pageSize) < data.Total
}
};
}
},
placeholder: "-- Select --",
minimumInputLength: 0,
allowClear: true,
});
});
</script>
が#supplierのようなものですが、スクリプトであなたの時間の人たちのための
おかげで動作していません!
ちょっとコメント... {new id = "supplier"}を使って要素のidを変更したので、検証はあなたのSupplierIdフィールドで拾うとは思わない。バリデータは 'SupplierID'という名前の要素を見つけられません。 –
私はあなたの意見を見て、助けてくれます。ありがとう –