ホームページ  >  に質問  >  本文

jQuery変数は文字列であるにもかかわらず未定義のURLにリダイレクトされます

jQuery を使用して新しい URL にリダイレクトしようとすると問題が発生しますが、どういうわけかこの特定のケースでは機能しません。 HTML と Django バックログで jQuery を使用していますが、これらのいずれかが未定義のパラメーターが表示される原因ではないと思います。コードは非常に単純です:

リーリー

クリックされた HTML 要素は次のとおりです:

リーリー

この場合、console.log(url) を使用して URL をログに記録し、"/something/something/" の形式で文字列を取得できます。ブラウザの検査ツールはブレークポイントを使用して、URL に実際に正しい URL が含まれていることを確認し、URL のタイプ (文字列) を取得できます。ただし、このコードを実行するボタンをクリックすると、サイトは http://127.0.0.1:8000/unknown (ローカル サーバーを使用しています) にリダイレクトされるため、どういうわけか URL が定義されています。

window.location=urlwindow.location.href= url など、新しい URL にリダイレクトするあらゆる方法を試すなど、これを行うためにさまざまな方法を試してきました。 ですが、常に未定義として表示されます。 URL のコンテンツとタイプも印刷してみましたが、すべて問題ないようです。私にとって最も奇妙なのは、コードを

に変更すると、 リーリー

最初の let URL 行の console.log() 結果から URL をコピーして貼り付けても、コードは正しい URL に正しくリダイレ​​クトされます。

問題を要約すると、data-href パッケージの URL を含むボタンがあります。ボタンがクリックされると、jQueryでURLを取得し、URLとして保存します。これで、console.log() を使用して URL をログに記録し、タイプを取得できるようになり、URL と期待するタイプ (文字列) を取得できます。この URL にリダイレクトしようとすると、「URL http://127.0.0.1:8000/unknown にリダイレクトできません」というエラーが表示されます。以前のロギング テストからコピー&ペーストした文字列に URL をハードコーディングしたところ、リダイレクトが突然機能しました。 この問題を解決するために他に何を試せるか知っている人はいますか?

P粉478188786P粉478188786181日前352

全員に返信(1)返信します

  • P粉448130258

    P粉4481302582024-04-02 00:28:36

    セレクター .view-diagnostics2 つの 要素と一致します。 ボタンdiv

    ボタンの関数を呼び出し、必要な値を window.location.pathname に割り当てます。

    イベントは div までバブルアップし、 関数 を 2 回呼び出します。 div には data-* 属性がないため、urlunknown です。これは window.location.pathname に割り当てられ、以前の割り当てを上書きします。

    返事
    0
  • キャンセル返事