2017-08-15 10 views
0

JavaScriptを使用してutm_source value = ""を送信するCookieを作成しています。上記の行が問題を引き起こしている私はは、utm_source値を参照してコンソールでJavaScript Cookie - utm_sourceの値を渡さないフォーム

ではなく、フォーム上

// Parse the URL 
    function getParameterByName(name) { 
     name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
     var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
      results = regex.exec(location.search); 
     return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
    } 
    // Give the URL parameters variable names 
    var source = getParameterByName('utm_source'); 

    // Set the cookies 
    if(Cookies.set('utm_source') == null || Cookies.set('utm_source') == "") { 
     Cookies.set('utm_source', source); 
    } 

    // Grab the cookie value and set the form field values 
    $(document).ready(function(){ 
     $('input[name=utm_source').val(utm_source); 
    }); 

</script> 
+0

あなたの 'Cookies'変数はどこから来ますか?ライブラリを使用している場合は、ライブラリへのリンクを提供してください。また、次の行に '$( 'input [name = utm_source').val(utm_source);'、あなたは閉じ括弧がなく、 'utm_source'変数を使用しています。あなたが投稿したスニペット。代わりに 'ソース'を意味しましたか?最後に、最後のブロック「Cookieの値を取得して設定...」では、Cookieを実際に使用していません。 – blex

+0

jQueryから次のようにしています。 https://github.com/js-cookie/js-cookie https://code.jquery.com/jquery-latest.min.js – Noel

答えて

0

通報1

$('input[name=utm_source').val(utm_source); 

2つの理由で

    あなたは(あなたが投稿スニペット)
  • utm_sourceはどこでもに定義されていない閉じ括弧が欠落している

クッキー値を使用したい場合は、あなたがこれを行う必要があります。

$('input[name=utm_source]').val(Cookies.get('utm_source')); 

度Prob LEMこのラインで2

if(Cookies.set('utm_source') == null || Cookies.set('utm_source') == "") { 

私はあなたが誤って.set()代わりの.get()を使用して、それがこのように簡略化することができることだと思う:

ために働くだろう
if(!Cookies.get('utm_source')) { 

nullおよび""は両方とも偽値です。

+0

私はあなたのお勧めのソースコードを使用し、それはうまくいきませんでした。 – Noel

+0

Noel

+0

コンソールにはvalue = ""が表示されますが、ソースコードには表示されません。ご協力ありがとうございました。 – Noel

0

ありがとう!それは動作するようになった!名前を置き換える必要がありました= customID

関連する問題