繁体   English   中英

如何使用Codeigniter的MVC动态创建DOM元素

[英]How to dynamically create DOM element with Codeigniter's MVC

我了解您用于生成页面的代码将放在CI的MVC模式的view部分中。

我正在尝试理解当1.用户提供输入2.输入发送到数据库3.添加另一个DOM元素以显示输入时函数的逻辑流程。

例如,就像Facebook,当您在某人的状态上留言时,您的消息将被“添加”到该状态回复链中。

因此,在view.php中,我将这样编写:当您尝试回复时,将对controller.php进行Ajax调用,并路由到model.php(这会将新的msg'添加'到DB),在此之后,我该从哪里去?

在客户端,当按下“添加”按钮时,消息通过Ajax发送回服务器。 服务器处理该消息,并将结果返回给客户端。 现在,您有两个选择:

  • 服务器仅响应成功或失败。 如果失败,则JavaScript显示错误消息;如果成功,则将消息追加到列表(使用发送到服务器的值)
  • 服务器以应添加的所有数据作为响应(例如,消息,作者,日期等)。 服务器可以返回JSON之类的数据,并且由于JSON = JavaScript Object Notation,JavaScript可以轻松地对其进行解析。 使用该数据,您可以构造新节点并附加它。

JSON响应如下所示:

{
 message: 'I like the new picture!',
 author : 'William',
 date : '2011-10-9' 
}

然后使用JavaScript进行解析。 请参考以下问题以获取解析示例: JavaScript中的JSON解析

我建议您使用第二个选项,因为服务器端可能会进行某些消息过滤/清除,并且显示给用户的最终结果可能与他输入的结果不同。

我没有使用CodeIgniter,而是使用Zend,它具有一些不错的逻辑,可以将响应类型从HTML更改为JSON或XML。 这个问题可能会对您有所帮助: codeigniter JSON

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM