【问题标题】:Saving edited values using Jeditable使用 Jeditable 保存编辑的值
【发布时间】:2009-08-18 19:22:00
【问题描述】:

我一直在寻找一个非常好的、有据可查的 jquery 插件,它可以让我在单击另一个按钮时编辑值。

Jeditable 是我找到的最接近的,但是我不确定如何保存它,即使在测试中也是如此。返回值的速度非常快。

我将它用于我的 php 脚本:

function editprofile()
{
    $this->input->post('value');
}

这是我的 JS 脚本:

$("a.edit").live('click', function(){

     $(this).parent("li").find("span.detail").editable('profile/editprofile', 
     {
         indicator : 'Saving...',
         submit  : 'OK',
         tooltip   : 'Click to edit...'
     });    
});

这是我的 HTML:

<span id="city" class="detail">Philadelphia</span>
<a href="javascript:;" class="edit">Edit</a>

固定: php应该是:

echo $this->input->post('value'); 

【问题讨论】:

  • 能否扩展一下服务器端代码?

标签: jquery ajax codeigniter inline-editing


【解决方案1】:

Jeditable,

来自 Jeditable 的示例:

在本例中,load.php 应返回未呈现 xhtml 的标记源。但是 save.php 应该返回渲染的 xhtml。保存时浏览器将准确显示保存脚本返回的内容。还有另一种选择。您可以在数据参数中传递标记源。

所以save.php 应该返回(打印到页面)文本(而不是 html),它将在编辑的地方显示。它还应该保存对数据库的更改或您应该做的任何其他服务器端工作。

You post with javascript, and echo to the client the response. http://img34.imageshack.us/img34/3412/savephp.png

save.php 上,您可以做任何事情来存储新值。

这里有另一个tutorial for the in-line editor for jQuery

【讨论】:

  • 前2个链接是我找到的2个,我用的是第一个,教程省略了我不知道怎么做的部分,就是php方面。
  • 我想我明白了:在我的 php 函数中忘记了一个字 echo $this->input->post('value');
  • 是的,我只是在客户端服务器端工作超出了我的知识范围,我有另一个与我一起工作的开发人员完成所有这些工作,我只是准备好正确发送数据。谢谢。现在,如果我能弄清楚如何通过链接调用更改。但这是另一个问题。
【解决方案2】:

toggledit 有一个简单的回调机制(onpreview、onedit)和一个简单的公共方法 api(编辑、预览)。

要保存,您可以编写自己的 ajax 函数,该函数会在这些或其他一些事件被触发时触发......例如如果点击了保存按钮。

切换到编辑模式的监听器也是可配置的——你可以传入你的按钮选择器:

$(form).find('input,select').toggleEdit({ 听众:{ 编辑:'#your_button' } });

此外,您可以使用公共事件从按钮手动触发编辑和预览:

$(el).toggleEdit('edit'); $(el).toggleEdit('preview');

另请参阅https://stackoverflow.com/questions/708801/whats-the-best-edit-in-place-plugin-for-jquery/:>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多