单击div时,在jQuery中发送POST请求

时间:2014-06-04 07:14:35

标签: javascript php jquery html

我无法弄清楚如何完成以下任务。

  • 点击段落元素
  • 使用jQuery发送.post请求
  • 从服务器获取发送的数据以显示在段落

我搜索了很多,并尝试使用一些解决方案,但失败了。

这是我的文件夹结构:

+ html
    - index.html
+ js
    - eventhandling.js
+ php
    - test.php

HTML

<div class="channel" id="channel1">
    <p class="title">CHANNEL 01</p>
    <p class="stb_sub_menu" id="model">STB Model</p>
    <p class="network_sub_menu" id="network">Network</p>
    <p class="smartcard_sub_menu" id="smartcard">Smartcard</p>
    <p id="reboots">Reboots</p>
</div>
<p id="demodata">Demo Data</p>

PHP

<?php echo "PHP script -> You called master?"; ?>

JS

$(".channel").click(function(){
    /*alert(I am clicked");*/
    $.post('test.php', {name: 'John'}, function(data) {
        $("#demodata").val("data");
    });
});

点击事件成功,因为会弹出警告。 Firebug控制台窗口上没有显示任何内容。

2 个答案:

答案 0 :(得分:1)

您传递到帖子的服务URL可能是错误的(根据文件夹结构)。 代码必须是这样的。

$(".channel").click(function(){
    var postData = {"name":"john"};
    $.ajax({
        type: "POST",
        url: '../php/test.php',
        data: postData ,
        contentType: "application/json",
        dataType: "json", 
        processdata: true,
        success: function (response) {

        },
        error: function(error){
        }
      });
   });

这对你有用。

答案 1 :(得分:0)

$(".channel").click(function(){
    /*alert(I am clicked");*/
    $.post('test.php', {name: 'John'}, function(data) {
        $("#demodata").text(data);
    });
});