Javascript 这篇文章正确吗?

Javascript 这篇文章正确吗?,javascript,ajax,cakephp,Javascript,Ajax,Cakephp,我试图在我的CakePHP操作中发布一个变量数组,以便编辑它们。数组是根据表行的ID构建的。下面是index.ctp文件中的javascript代码 <script type="text/javascript"> $('.edit_selected').click(function() { var selected = new Array(); alert('Edit Selected Has Been Clicked'); $("#[id*=LocalClo

我试图在我的CakePHP操作中发布一个变量数组,以便编辑它们。数组是根据表行的ID构建的。下面是index.ctp文件中的javascript代码

<script type="text/javascript">
$('.edit_selected').click(function()
{
    var selected = new Array();
    alert('Edit Selected Has Been Clicked');
    $("#[id*=LocalClocks]").each(function()
    {
        if(false != $(this).is(':checked'))
        {
            selected.push($(this).attr('id').replace('LocalClocks', ''));
            $.ajax({
            type: 'POST',
            url: "/localhost/LocalClocks/editSelected/",
            data: JSON.stringify(selected),
            dataType: "json",
            success: function(data){ alert(data); alert('Edit Success'); }
            });
        }
    });
});
</script>

我试图发布数据的原因是,我需要能够获取要编辑的行的ID。我在每一行中都有复选框,上面的javascript可以获取这些复选框并将其放入数组中。我需要能够循环该数组并将用户输入保存到它们。

如果服务器端代码接受JSON,则需要将
contentType:“application/JSON”
添加到传递给
ajax
方法的文本对象中。现在,它是与默认的
应用程序/x-www-form-urlencoded
一起发送的。除此之外,您的代码看起来很可靠


datatType
用于返回数据,
contentType
是如何传递请求数据的。

如何判断我的服务器端代码是否接受JSON?有内置的功能吗?如果不是,那么我的代码不支持JSON,因为我没有编写任何代码来支持JSON。我不熟悉CakePHP,所以我不确定它如何绑定请求数据。我这样回答的原因是,您似乎正在发送JSON,如果您明确需要发送JSON,我假设您会这样做,如果您确实需要发送JSON,则需要指定contentType。如果我是你,我会先尝试添加上面的contentType。如果这不起作用,请将其删除,并将选定的
格式化为文本对象,例如
{“Key”:“Value”}
。我将contentType添加到数据类型正上方的ajax调用中。(我想)它还是不起作用。如果ajax是正确的,那么我可以在我的操作中获取这些信息。感谢您对ajax的帮助。我无法执行文字对象,因为数组正在动态填充。
public function editSelected()
{
    $this->set('isEditSelValid', false);
    $this->set('editSelValidationErrors', false);
    if ($this->request->is('post'))
    {
        $localClocksEntries = $this->LocalClock->find('all');
        foreach($localClocksEntries as $LocalClock)
        {
            $this->LocalClock->id = $LocalClock['LocalClock']['id'];
            $this->LocalClock->save($this->request->data);
            $this->set('isEditSelValid', true);
            $this->set('editSelValidationErrors', false);
        }
    }
}