0

これは私のデザインコードです->

<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $("input[id$='Button1']").click(function () {
            $.ajax({
                type: "GET",
                url: "Default.aspx",
                data:'{ a: 2, b: 3 }',
                contentType: "application/json; charset=utf-8",
                dataType: "json",

                success: function (data, textStatus, request) {
                   alert(data);

                   $("#weather-temp").html(data[0]);
                }
            });
        });
    });
</script>
<asp:TextBox ID="test" runat="server" Text="hi"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />

結果:アラートボックスにNullが表示されます...誰かが私の問題を解決できますか....

4

1 に答える 1

0

ここで質問する前に、これを修正しようとしましたか? 最新のすべてのブラウザーには、httprequests を監視し、失敗した場所を正確に確認できる開発者ツールがあります。ブレークポイントとウォッチ式を配置して、何が起こっているのか、なぜ起こっているのかを確認することもできます。開発ツールを見れば、この問題は数分以内に修正されると思います。

多くの場合、サーバーから何も返されないのは、ajax 呼び出しが正しく実行されていないか、ファイルへのパスが正しくないか、送信しているデータが有効な json ではないか、バックエンド スクリプトが構文的に正しくないか、そうでないことが原因です。正常に機能しています。問題が開発者ツールの使用に起因する場所を簡単に絞り込むことができます。エラーがどこにあるかを知ることは、戦いの半分です。

あなたのコードに関するいくつかのこと:

jquery ライブラリを 1 回だけ呼び出します。通常、人々は開発中に縮小されていないバージョンを使用し、本番環境では縮小版と交換します。

スクリプトで jquery の .click を使用しているときに、マークアップで Button1_Click を onclick イベントに割り当てるのはなぜですか? (私が aspx ではなく mvc4 開発者であるため、これが私が知らない aspx 規則でない限り)

json が無効です ( を削除し、文字列 (値) を "" で囲みます)。

サーバーにデータを送信する場合は、get メソッドではなく post メソッドを使用する必要があります。これは必須ではありませんが、多くの人がこれをベスト プラクティスと考えています。

于 2013-02-28T18:45:09.260 に答える