jquery - 使用 Catalyst 避免 AJAX 响应中的包装器

标签 jquery ajax perl catalyst

我正在尝试使用 Catalyst 来处理 AJAX 请求,以解决通过 jQuery 生成的一些动态 html 问题。简单来说,我需要填写一个<select> </select>标签(通过 jQuery 创建,以及用户输入的一些其他字段)。为了填充这个标签,我想我可以扩展创建标签的代码块,以对我需要的数据执行简单的 AJAX 请求...如下所示:

 $.post("../ajax/simple_query", 'get="family_precedents"' );

然后像平常一样使用 Catalyst::Request 在 Perl 脚本上处理这个非常简单的请求。

问题在于 AJAX 响应包含 Catalyst 应用程序包装器,这使得理解和使用变得非常困惑。 有没有办法避免使用催化剂对 AJAX 响应进行包装?

最佳答案

我通过深入研究催化剂文档找到了答案。事实证明,您可以将包装器配置为有条件地显示,如下所示:

[% IF no_wrapper or template.name.match('\.(css|js|txt)');
  debug("Passing page through as text: $template.name");
  content;
 ELSE;
  debug("Applying HTML page layout wrappers to $template.name\n");
  content WRAPPER site/html + site/layout;
 END; -%]

然后发送 no_wrapper 值以及 $c->stash->{no_wrapper}

来源:http://wiki.catalystframework.org/wiki/gettingstarted/howtos/disabling_a_tt_wrapper_for_ajax_requests

关于jquery - 使用 Catalyst 避免 AJAX 响应中的包装器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41860406/

相关文章:

javascript - ajax数据不落成功

linux - 找不到 XML/LibXML.pm 和 cpan 找不到 c 编译器生成

javascript - JQuery Select 选项在 Firefox 中只能工作四次

jquery 加载功能不起作用

javascript - AJAX和php JSON连接DB并返回值

perl - 初始化 Moose 类的 CodeRef 字段

regex - Perl 正则表达式 : Does the at sign @ need to be escaped?

javascript - 页面重新加载时记住 <select>

jquery - 如何使用 JQuery 发送按键触发器

javascript - 带有要传递的 header 参数的 Img src 路径