在php中通过Ajax更新div内容

时间:2014-07-16 05:39:02

标签: php html ajax

我在网站上制作编辑功能,并使用ajax更新div,这是我的代码。

<?php  echo '<div class="products_data" id="servicedata' . $i . '">
                        <label id="servicename' . $i . '">' . $ser_name [$i] .                       '</label><div class="edit" style="display: none; margin-top:12px;margin-left: -20px;"><a   onclick="editService(' . $i . ')"><img alt="edit_icon" src="images/edit-icon.png"    class="edit_link edit"></a></div>
                        <p><a href = "' . urldecode ( $ser ['data'] [$i] [0] ['data']    ['url'] ) . '" id="serviceurl' . $i . '">' . urldecode ( $ser ['data'] [$i] [0] ['data'] ['url'] ) . '</a></p>
                            <p>';
                        $str = base64_decode ( $ser ['data'] [$i] [0] ['data']      ['description'] );
                        echo '<div id="servicedescription'.$i.'">' . $str . '</div>';

                        echo '</p></div>';?>

我的ajax功能是:

var t;

function updateServices(t)
{
var vse = "#serviceedit"+t;
var vsd = "#servicedata"+t;
var div = "servicedata"+t;
var vsne = "serviceNameedit"+t;
var vsue = "serviceURLedit"+t;
var vsde = "serviceDescriptionedit"+t;
var service = "service"+t;
var tno = t;
var sne = document.getElementById(vsne).value;
var sue = document.getElementById(vsue).value;
var sde = document.getElementById(vsde).value;
var srvc = document.getElementById(service).value;
$.ajax({
    url: "./handler/serviceEdit_process.php",
    type: "POST",
    data: {
        COMPANY:<?php echo '"'.$company.'"';?>,
        editserName: sne,
        editserURL: sue,
        editserDescription: sde,
        service: srvc,
        TNO: tno
    },
    success: function(data) {
        alert(vse);
        alert(vsd);
        $(vse).css("display","none");
        $(vsd).css("display","block");
        $(div).empty();
        $(div).html(data);
    }
});

我的div只在页面重新加载后更新,我想在页面内更新div。

1 个答案:

答案 0 :(得分:0)

您应该阻止浏览器关注链接:

<a   onclick="event.preventDefault(); editService(' . $i . ')">

或:

$(document).ready(function() {
    $("a").click(function(event, t ) {
        event.preventDefault();
        // Do your stuff here...
    });
});