使用ajax调用PHP函数不起作用 - php

我正在使用ajax调用来调用php函数,但无法正常工作。当我单击某行的任何列时,它的某些列会变为可编辑的值,但是当我编辑该值并单击另一列或输入更改后的值时,该表将不再显示。实际上,我正在执行ajax调用,在此我更改了表中列的数据,但未调用该php函数。

我的脚本如下

<script type="text/javascript" >
$(document).ready(function()
{
    $(".edit_tr").click(function()
    {
        var ID=$(this).attr('id');
        $("#span_"+ID).hide();
        $("#input_"+ID).show();
    }).change(function()
    {
        var ID=$(this).attr('id');
        var input=$("#input_"+ID).val();
        var dataString = 'id='+ ID +'&data='+input;
        $("#span_"+ID).html('<img src="load.gif" />'); // Loading image

        if(input.length>0)
        {

            $.ajax({
                type: "POST",
                url: "worker_app::edit_ajax()",
                data: dataString,
                cache: false,
                success: function(html)
                {
                    $("#span_"+ID).html(span);
                }
            });
        }
        else
        {
            alert('Enter something.');
        }

    });

    // Edit input box click action
    $(".editbox").mouseup(function()
    {
        return false
    });

    // Outside click action
    $(document).mouseup(function()
    {
        $(".editbox").hide();
        $(".text").show();
    });

});

HTML表如下所示

<tbody>
  <tr id="{IDWORKERS}" class="edit_tr">
    <td class="edit_td">
      <span id="span_{IDWORKERS}" class="text">{FIRM}</span>
      <input type="text" value="{FIRM}" class="editbox" id="input_{IDWORKERS}" />
    </td> 
  </tr>
</tbody>

php函数位于名为wroker_app.php的文件中的apps文件夹内

public function edit_ajax(){
    ///echo "<pre>";
    ///print_r($_POST);
    //echo "</pre>";
   // sql to update the database goes here
    echo 'I am here';
}

有任何想法吗?

提前致谢

参考方案

您不能像这样调用php函数。您只能调用一个php文件,您可以在其中确定应执行的功能。
一个简单的例子:

$.ajax({
 type: "POST",
 url: "/apps/worker_app.php",
 data: dataString,
 cache: false,
 success: function(html) {
   $("#span_"+ID).html(span);
 }
});

并在您的apps / worker_app.php中:

<?php 

function edit_ajax(){
  echo 'I am here';
}

// You can put some logic before this line to decide which function to call based on the request
edit_ajax();

PHP Count数组元素 - php

嗨,有人可以解释为什么这会返回“数组由0个元素组成”。 :$arr = array(1,3,5); $count = count($arr); if ($count = 0) { echo "An array is empty."; } else { echo "An array has $count elements.…

PHP:从函数返回值并直接回显它? - php

这可能是一个愚蠢的问题,但是……的PHPfunction get_info() { $something = "test"; return $something; } html<div class="test"><?php echo get_info(); ?></div> 有没有办…

PHP:将数据从二维数组复制到一维数组的最快方法 - php

我有一个巨大的二维PHP数组,带有500万行。$t = [ [ "id" => 1, "name" => "foo" ], [ "id" => 2, "name" => "bar" ] ]; 现在,我必须将此数组的I…

php-printf和sprintf具有不同的输出 - php

我编写了以下微型php程序来测试printf和sprintf:<?php $str_1 = printf("%x%x%x", 65, 127, 245); $str_2 = sprintf("%x%x%x", 65, 127, 245); echo $str_1 . "\n"; echo $s…

PHP-正则表达式删除引号并添加大括号? - php

好吧,我不愿承认这一点,但是我对REGEX感到很困难,我永远找不到关于如何设置表达式的不错的教程。所以说我有这样的事情context['something'] 我想将所有事件更改为context[something] 那我有' . $var . ' 我想将所有事件更改为{var} 这是当前的概念,但是我在正则表达式部分…