1

私はjavascriptを使用するのが初めてです。これは、誰かがC#ASP.Net Webサイトに入力したコードです。入力された郵便番号から、市と州を取得することになっています。IE9、Chrome、Firefoxでうまく機能しますが、IE8では失敗します。理由がわかりません。これがjavascriptです。誰かに何かが目立つことを願っています。それを使用するマークアップも含めました。どこで失敗しているのかわかりません。Pcodefailの結果が表示され、「*郵便番号が見つかりません」と表示されます。

<script type="application/javascript">
    $(document).ready(function () {
        $('#Pcodefail').hide();
    });
</script>

<script type="application/javascript">
    $(document).ready(function () {
        $('[id$=uxPostalCode]').focus(function () {
            var city = $('[id$=uxCityState]');
            city.val('');
        });

        $('[id$=uxPostalCode]').blur(function () {
            var city = $('[id$=uxCityState]');
            var oCity = $('[id$=uxCity]');
            var oState = $('[id$=uxState]');
            $.getJSON("http://www.geonames.org/postalCodeLookupJSON?&country=US&callback=?", { postalcode: this.value }, function (response) {
                //$.getJSON("http://api.geonames.org/findNearbyPostalCodesJSON?postalcode=?&country=US&radius=10&username=demo", { postalcode: this.value }, function(response) {
                if (!city.val() && response && response.postalcodes.length && response.postalcodes[0].placeName) {
                    city.val(response.postalcodes[0].placeName + ', ' + response.postalcodes[0].adminCode1);
                    oCity.val(response.postalcodes[0].placeName);
                    oState.val(response.postalcodes[0].adminCode1);
                    $('#Pcodefail').hide();
                }
                else {
                    $('#Pcodefail').toggle();
                }
            });
        });
    });
</script>

HTML

<div class="base-container-controls-100pct">
    <div class="base-container-controls-20pct">
        <div class="label-sm">Postal Code<span style="color: #ff0000; vertical-align: top">*</span>&nbsp;</div>
    </div>
    <div class="base-container-controls-50pct">
        <asp:TextBox ID="uxPostalCode" CssClass="textbox-sm" Text="" TabIndex="7" runat="server" MaxLength="11"></asp:TextBox>
        <asp:RequiredFieldValidator ID="uxreqValZip" runat="server" ErrorMessage="Postal Code" Font-Bold="False" Text="*" ValidationGroup="one" ControlToValidate="uxPostalCode"></asp:RequiredFieldValidator>
        <div id="Pcodefail" style="color: Red">* Unable to find Postal Code</div>
    </div>
</div>
4

1 に答える 1

4

100%確信はありませんが、コードをざっと調べてみると、最初に目立つのはタグ<script type="application/javascript">です。代わりにそうあるべきだと私はかなり確信しています<script type="text/javascript">。IEはJSタグについて非常にうるさいです。

于 2012-12-12T21:59:41.900 に答える