0

サファリでは機能していないように見えるJavaScriptのスニペットがありますが、他のすべてのブラウザでは機能します。

これがコードです

<script type="text/javascript">
        $(document).ready(function () {

            var contracts = $.evalJSON($("#json_contracts").val());
            var contractDropDown = $("#<%= c.cID%>");
            var dateDropDown = $("#<%= _startDate.cID %>");

            function populateMonths(i) {

                dateDropDown.empty();

                if (i == 0) {
                    dateDropDown.append("<option value=\"Select Month\">Select Month</option>");
                    return;
                }

                $(contracts[i-1].AvailableBillingMonths).each(function(j) {
                    var selected = "";
                    dateDropDown.append("<option value=\"" + contracts[i-1].AvailableBillingMonths[j].InvoiceMonth + "\" " + selected + ">" + contracts[i-1].AvailableBillingMonths[j].InvoiceMonth + "</option>");
                });
            }

            contractDropDown.click(function() {
                populateMonths(this.selectedIndex || 0);
            });
        });
    </script>

なぜそれが機能しないのか誰かがわかりますか?このスニペットの要点は、日付のドロップダウンに正しい月を入力することですが、実際にはサファリに入力することはありません。

4

1 に答える 1

2

clickイベントをchangeイベントに置き換えます。

これを試して

contractDropDown.change(function() {
于 2012-10-29T15:39:36.370 に答える