2017-06-17 94 views
0

我有以下代碼,它將類「描述」中的按鈕的最近的同級元素作爲參數,並將其內容輸出到控制檯。我想將這些內容寫入文本文件中的特定位置。我的代碼如下:HTML JQuery或PHP,將數據寫入文本文件

<!DOCTYPE html> 
<html> 
<head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
    <title></title> 
</head> 
<body> 

    <table> 
     <tr> 
      <td> 
       <table> 
        <tr><td>Name</td><td>Jenkins</td></tr> 
        <tr><td>Job</td><td>Accountant</td></tr> 
       </table> 
      </td> 
      <td class="description"> 
       He's just a man. 
      </td> 
      <td> 
       <button class="learn">Learn</button> 
      </td> 
     </tr> 
    </table> 

    <script type="text/javascript"> 
     $(".learn").click(function(){ 
     var data = $(this).closest("td").siblings(".description").text(); 
     console.log(data); 
     }); 
    </script> 
</body> 
</html> 

我要找寫的文件是這樣的:

Var data = [ 
    { 
    name: group1, 
    items: [ 
     { 
     name: "bob", 
     job: "salesman", 
     description: "underground comedian" 
     } 
    ] 
    }, 
    { 
    name: group2, 
    items: [ 
     { 
     name: "susan", 
     job: "chef", 
     description: "loves McDonalds" 
     } 
    ] 
    } 
] 

所以我想能夠創建這個文本文件的一個新元素指定的地方(組1或組2)並插入腳本抓取的信息。

我一直在閱讀使用JS和JQuery進行這種工作,我想要做的並不是一個好主意,所以如果任何人都可以解釋我如何用PHP或兩者的結合來完成這種工作將不勝感激。

回答

0

更改您的JS代碼:

<script type="text/javascript"> 
    $(".learn").click(function(){ 
    var data = $(this).closest("td").siblings(".description").text(); 
    $.post('save.php', 'data=' + data); //AJAX call to save.php 
    }); 
</script> 

然後創建一個save.php文件,並把這個在它:

<?php 
file_put_contents('textfile.txt', $_POST['data']); 

我不知道你怎麼想格式化該文本文件這裏面但這應該讓你開始。

+0

謝謝你的幫助。我想將其格式化爲'text.txt',其結構與上面包含的「數據」文件類似。在那裏我會創建另一個名稱爲「Jenkins」的作業:「Accountant」,描述:「他只是一個人」,在group1或group2 – laroy

+0

中,由於某些原因,當描述寫入textfile.txt時,縮進以及內容啓動前的大約4個標籤。任何想法,爲什麼? – laroy