在Drupal的form表单中使用js事件,比如onClick和onChange等,或者加载一些css样式等自己需要的杂七杂八的东西
来源:互联网 发布:苹果骚扰拦截软件 编辑:程序博客网 时间:2024/06/15 08:57
我使用的是drupal 6 版本
由于Drupal使用自己的form表单机制来输出表单,如果想在表单中使用一些自己定义的css或者添加的js控件等可以这样做:
drupal的form表单有一个属性叫做#attributes,详见:http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/6#attributes
这里我写一个调用js日历的小例子来说明一下如何使用,我这里调用的是onClick事件
菜单指向的方法函数:
function credit_test(){
//指定我要加载的js文件
$modulepath = drupal_get_path('module', 'credit');
drupal_add_js($modulepath.'/js/date.js');
$output = drupal_get_form('credit_test_form');
return $output;
}
然后是表单:
function credit_test_form(&$form_state){
$form['dateinput'] = array(
'#id'=>'mydate',
'#title' => t('输入日期'),
'#type' => 'textfield',
'#size' => '50',
'#required' => TRUE,
'#attributes' => array('onClick' => 'MyCalendar.SetDate(this)')
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('提交')
);
return $form;
}
在这里,菜单访问的函数我写了一个credit_test()方法过度而不是直接调用drupal_get_form方法,这样方便我加载我想要的js文件或者css文件,当然直接在credit_test_form加也可以,好了,闲话少说,看form函数中的dateinput元素,它是个textfield,用来输入日期,红字部分就是用到了#attributes属性,他本身可以是个数组,在后面可以加入你想放的东西,我这里加了一个onClick事件来触发我的日历,这样在实际输出的页面中这个textfield看起来会是这样:
onClick部分就是#attributes打出来的,效果:当然如果有更多的其他属性,就在其所在的数组里继续写就可以了,比如 '#attributes' => array('onClick' => 'MyCalendar.SetDate(this)','onChange'=>'namecheck()','class'=>'dateinput',readonly=>true)等等
- <input type="text" name="dateinput" id="mydate" size="50" value="" onClick="MyCalendar.SetDate(this)" />
- 在Drupal的form表单中使用js事件,比如onClick和onChange等,或者加载一些css样式等自己需要的杂七杂八的东西
- 在Drupal的form表单中使用js事件,比如onClick和onChange等,或者加载一些css样式等自己需要的杂七杂八的东西
- UIWebView中需要用到资源(图片,js脚本,css样式等)时的加载方式
- JavaScript获取onclick、onchange等事件的值
- onclick,onchange,onblue等触发性事件的区别
- js中使用background-size等带“-”的css样式
- 一些杂七杂八的东西
- 一些杂七杂八的东西
- form表单中onclick事件和onsubmit事件的执行顺序
- 关于form提交表单和onclick事件的触发
- 关于Onclick事件,comfirm方法等的一些操作
- Android中,一些用于统一管理的类,比如 log,比如 toast,比如 url等(log篇)
- Android中,一些用于统一管理的类,比如 log,比如 toast,比如 url等(toast篇)
- Android中,一些用于统一管理的类,比如 log,比如 toast,比如 url等(url篇)
- select的onchange事件和onclick事件区别
- 利用js和html实现表单操作(onsubmit、onclick、submit等方法的异同)
- MVC3 一些杂七杂八的东西
- form 表单提交中onClick和onsubmit的区别
- EditText小结
- Oracle 创建数据库的乱码问题
- mount.nfs: access denied by server while mounting 一个解决办法
- Linux内核的主要配置选项
- android 透明窗体的使用
- 在Drupal的form表单中使用js事件,比如onClick和onChange等,或者加载一些css样式等自己需要的杂七杂八的东西
- 求解分数(真分数和假分数)的循环周期
- IOS开发(54)之Storyboard之传值
- WindowsCE环境下无线网卡的自动安装
- android面试常见题
- C++ 传递数组的问题
- 【.Net免费公开课】--邹华栋老师授技“跨平台的.Net
- cloudstack安装和管理
- POJ 1063