2017-07-27 4 views
0

私のhref値を変更しようとしていますが、変更されていないようです。私はjQueryとjavascriptの両方のメソッドを試してみましたが、どちらもうまくいきませんでした。タグのhref値を変更できません

<a type="button" class="view_me btn btn-primary" href="#">View Full</a> 
$(document).on("click", ".click_row", function (e) { 
    e.preventDefault(); 
    var _self = $(this); 
    userId = _self.data('id'); 
    var newLink = '/users/view/' + userId //I'd like to eventually use this as new href link 

    $(".view_me").prop("href", "www.google.com"); // Tried testing with a simple webpage 

    // document.getElementById('view_test').href = "www.google.com"; // Tried this as well, doesn't work 

    console.log(newLink) 
}); 

任意の提案が役立つだろう。私はjQueryを使用しています。3.2.1

+0

'。代わりに 'http:// www.google.com'を試してください。 –

+0

は' view_test'と 'click_row'です。 – guradio

+3

' View Full 'はIDが' view_test'ではありません。 –

答えて

0

意図した動作を妨害するいくつかの問題がありました。まず、click関数は、click_rowクラスを探していたので呼び出されていませんでした。私はあなたがこれがview_meクラスであることを意味するかもしれないと信じています。 第2に、URLの先頭にhttps://を追加して、URLを適切にリダイレクトする必要があります。最後にクラスのクラスのリンクのhrefプロパティを設定する必要がありました。idview_meではなく、view_meのクラスを設定する必要がありました。

編集:e.preventDefault()を削除するか、リンクを新しいタブで開くことしかできません。

次JSコードは、これらの問題を修正し、所望の動作を生成します。

$(document).on("click", ".view_me", function (e) { 

     //e.preventDefault(); 

     var _self = $(this); 
     userId = _self.data('id'); 

     var newLink = '/users/view/' + userId 
     $(".view_me").prop("href", "https://www.google.com"); 

     console.log(newLink); 

    }); 

ワーキングJSFiddle:有効なURLではありませんwww.google.com` https://jsfiddle.net/2m0297j1/

+0

これは変です。私はタグをクリックしたままにすることはできませんが、別のタブで開くとうまくいきます。あなたのソリューションをありがとうございますが、最終目標はhrefリンクをパラメータに変更することです。 –

+0

それを考え出した。 e.preventDefault()が奇妙な動作を引き起こしていた – ajc2000

+0

OMGありがとうございます<3 –

関連する問題