用于在PHP/jQuery(或其他web语言)中向表单控件添加jQuery功能的设计模式

用于在PHP/jQuery(或其他web语言)中向表单控件添加jQuery功能的设计模式,php,jquery,language-agnostic,Php,Jquery,Language Agnostic,我正在为一个项目使用PHP和jQuery 由于一些表单可以跨不同的功能重用,因此我编写了一个策略类来呈现表单。此类类的一个示例如下所示: class strategy_render_member_form() { public function execute() { return '<form> <input type="text" name="user_name" id="user_name"></input&

我正在为一个项目使用PHP和jQuery

由于一些表单可以跨不同的功能重用,因此我编写了一个策略类来呈现表单。此类类的一个示例如下所示:

class strategy_render_member_form()
{

     public function execute() {
      return '<form>
              <input type="text" name="user_name" id="user_name"></input> 
               //...snipped 
              <input type="text" name="dob" id="dob"></input>
              </form>';
     }
}
我希望使用jQuery的日期选择器将“dob”文本框格式化为日历。现在的问题是-我应该在哪里添加JavaScript函数来实现这一点

<script type='text/javascript'>
$(function() {
    $( "input#dob" ).datepicker();
</script>

$(函数(){
$(“输入#dob”).datepicker();

控制器是否应该将其添加到视图中?策略是否应该定义它?我是否应该使用回调或钩子来“装饰”表单控件?

IMO,这最好与PHP隔离。它属于UI行为层,例如在JavaScript文件中。我会在外部JS文件中加载页面时悄悄注册clickhandler(想想JS的bootstrap),以及增强UI的任何其他JavaScript

<script type='text/javascript'>
$(function() {
    $( "input#dob" ).datepicker();
</script>