什么时候在PHP中使用javascript(什么时候不用)?

时间:2014-04-27 14:21:48

标签: php jquery joomla

我有一些php和javascript(/ jquery)编程经验,刚开始学习Joomla和MVC。

MVC编码组件驱动bij用户操作,但许多类型的javascript程序(例如使用按钮,选择菜单等)也是如此。什么时候应该使用mvc模式,什么时候应该使用javascript?

第二个问题,是否有人(链接到)一个简单的代码示例,演示了jquery代码在php(视图文件)中的集成? (我希望在http://docs.joomla.org/Adding_JavaScript..中找到它。)

2 个答案:

答案 0 :(得分:0)

从您的评论看来,您似乎想知道何时使用Javascript以及何时不使用Javascript。

这是一个非常主观的问题。就个人而言,我认为如果你没有充分的理由(例如性能问题),你不应该依赖javascript来实现功能,因为它限制了可访问性并且对SEO有害。另请参阅these two个帖子。

关于你的例子:现在,MVC是一个繁琐的术语。但是在选项b中,只有一个Javascript函数可以处理所有内容。所以你不是在分离Model,View和Controller,所以它不能真正被称为MVC。并且选择哪个选项:这是一个品味问题。我更喜欢选项a,因为如果你确实希望你的网站可以访问,你必须为选项b编写一个后备代码,这似乎是很多不必要的工作。唯一的缺点是你对服务器有一个不必要的额外请求。

关于你的第二个问题:你没有在PHP中集成Javascript。 Php在服务器端执行(然后通常将生成的html页面返回给用户),而Javascript在客户端执行(并且可以例如更改用户获得的html代码)。

答案 1 :(得分:0)

我不是MVC专家。虽然从我所读过的内容来看,Javascript或PHP的选择对于你是否遵循MVC风格并没有多大影响(单凭本身)。也就是说,您仍然需要观察服务器端(PHP)和客户端(JS / jQuery)之间的差异,以使工作始终如一。

对于大多数网站,您将遵循以下原则:Javascript仅用于服务器端代码可能执行的操作。我通常尝试使用纯服务器端代码使所有功能都正常工作。就此而言,我的意思是,当用户没有启用Javascript或者无法使用Javascript时,任何用户都无法做出必要的事情。然后我在顶部添加Javascript以用于铃声和口哨声。我有Javascript处理必要的功能,但只有当我的PHP代码已经可以做它们作为后备时。

一个例子可能是你有一个加载一些新数据的按钮。您可以使用Ajax动态获取Javascript并显示该数据,这可能更加用户友好。但是,如果客户端上没有可用的Javascript执行,则应通过加载新页面来加载数据。

jQuery / PHP可能看起来像这样:

$('.elem').click(function(){
    $(this).val('<? echo $phpvar; ?>')
});

这是否是&#34;整合&#34;是为了进行语义辩论。您可以使用PHP输出JS代码,包括如上所述分配给其参数的数据,但是就JS和PHP可以一起进行操作而言。实际上,PHP运行,然后然后 Javascript运行,使用你可能有PHP输出的任何JS东西。请注意,这通常只能在。{{{}}标记中包含Javascript代码的.PHP页面上完成,而不能在.JS页面上完成。