2017-03-07 5 views
0

私は、slick.htmlというhtmlファイルでnavbarを定義しています。私はクリックされたnavbarタブのidをuntitled.phpに渡そうとしています。 untitled.phpには他のデータがあります。私はslick.htmlにnavbarを分離しようとしています。私はデータを転送するためにJQueryのポストを使用しようとしており、$ _POSTを使ってアクセスしていますが、値を取得できません。私はそれがクライアントサイドとサーバサイドに関連する何かであることを理解しています。以下はコードです。私はAJAXの投稿を使ってみましたが、何の結果も得られませんでした。それは働いていない理由を私は理解していないなぜJQueryポストがデータを転送していないのですか?

<?php 
$var = $_POST['id']; 
echo var_dump($var); 
// this fetches your post action 
echo "this is my variable: " . $var; // this outputs the variable 
?> 
<html> 
    <body> 
    <object width=100% data="slick.html"></object> 
     <script> 
    $(document).ready(function(){ 
     $('[data-toggle="popover"]').popover(); 
    }); 
     </script> 
    </body> 
</html> 

<body> 

      <ul class="nav nav-tabs "> 
      <li class="active"> 
       <a id="soilProfile" href="#tab_default_1" data-toggle="tab"> 
       Soil Profile </a> 
      </li> 
      <li> 
       <a id="productivityIndex" href="#tab_default_2" data-toggle="tab"> 
       Productivity Index </a> 
      </li> 
      <li> 
       <a id="Wetlands" href="#tab_default_3" data-toggle="tab"> 
       Wetlands </a> 
      </li> 
      </ul> 

//More Code 
</div> 
<script> 
$(function() { 
    $('[data-toggle="popover"]').popover() 
    $('#soilProfile').click(function(event) { 
     console.log("About to post"); 
     var data = {id : event.target.id}; 
     console.log(data); 
     var request = $.ajax({ 
         url: "untitled.php", 
         method: "POST", 
         data: { id : data }, 
     }); 

     console.log("AFTER POST"); 
    }); 
    $('#productivityIndex').click(function(event) { 

    var data = {id : event.target.id}; 
    $.post("untitled.php", data); 

}); 
$('#wetlands').click(function(event) { 
    var data = {id : event.target.id}; 
    $.post("untitled.php", data); 
}); 

}); 

</script> 
</body> 

untitled.php

slick.html(関連部分)。理由を教えてください。または、この問題についてより良い解決策を提案してください。

+0

簡素化 'データをSE:{番号:event.target.id}、'このコードを忘れ 'VARデータ= { ID:event.target。 id }; ' – RiggsFolly

+0

ありがとう!変数はまだnullです! – WOW

+0

イベント・イン・ファンクション(イベント)を削除しようとしています。 $(#id).click(function(){..あなたのコード..}) –

答えて

0

「untitled.php」を使用していますが、このページのタイトルは「Untitled.php」です。 Linuxの場合、ケースが違います。

+0

が修正されましたが、これは私の問題の解決策ではないと思います。それは有り難いです! :) – WOW

0

javascriptを実行する前に、slick.htmlがアンカーのクリックだけで更新されているとは限りませんか?デフォルトのイベントを防ぐ必要はありませんか?

+0

はい! jQuery.click()の下でevent.preventDefault()を追加しましたが、何の助けもしていません。ありがとう! – WOW

0

あなたがクリックしたIDを渡したい場合は、

これをしようとするにconsole.log

$('#soilProfile').click(function() { 
     console.log("About to post"); 
     var data = $(this).attr("id");   
     console.log(data); 
     $.ajax({ 
       url: "untitled.php", 
       type: "POST", 
       data: { id : data } 
     }); 

     console.log("AFTER POST"); 
    }); 
+0

はい!私はそれを試しましたが、問題はuntitled.phpの$ _POSTがまだnullであることです。ありがとう! – WOW

+0

ああ..私の悪いです。その方法ではいけません。それはタイプ –

+0

タイプする必要がありますか? – WOW

関連する問題