DAY2-暑假实习经历
第二天,每天都学新知识。
- kuali rice下bean标签部分用法:parent - 跟继承,框架自带很多元素,比如Uif-DialogDismissButton、Uif-InputField、Uif-PrimaryActionButton等等。但里面还可以添加css和js。
css - p:additionalCssClasses=”“,
js - p:onDocumentReadyScript=”“,
还有一种用于按钮判断的 - p:preSubmitCall=”“里面调用js方法,也可以实现部分功能。在提交时判断部分inputField是否为空很好用。 - 在kuali rice框架里,每一个标签都是需要翻译成HTML才能在页面上显示,所以在一个Uif-InputField里,指定id为:field-text,解析的时候会在HTML中inputField外面添加一个div。这个div的名字是filed-text,而inputField的id为:field-text_control。框架解析时会自动加上一个后缀_control。所以在用js对页面进行操作时注意id的使用。还没接触过其他框架,不知道是不是也是这样。
- kuali rice的property标签部分用法:大部分是使用name = “items”,但是需要做js的部分操作时,就一个items不一定能找到相应位置。可以写成:< property name=”footer.items”>这样在js里面就可以:
jQuery(“#teaProjectDialog div.modal-footer”).append(textInfo);
teaProjectDialog是上层id,下面解析时自动封装div,就可以这样找到footer,然后做相应操作。 function checkAddTeaProjNull(inputID,selectIdOne,selectIdTwo,selectIdThree){
//得到三个下拉框的值
var objSelectOne = document.getElementById(selectIdOne + '_control');
var objSelectTwo = document.getElementById(selectIdTwo + '_control');
var objSelectThree = document.getElementById(selectIdThree + '_control');
var textOne = objSelectOne.options[objSelectOne.selectedIndex].text;
var textTwo = objSelectTwo.options[objSelectTwo.selectedIndex].text;
var textThree = objSelectThree.options[objSelectThree.selectedIndex].text;
jQuery('#' + inputID + '_control').click();
if(jQuery('#' + inputID + '_control').val() == null || jQuery('#' + inputID + '_control').val() == '' || textOne == '' || textTwo == '' || textThree == ''){
var textInfo = '<span class = "warningText"> 带*为必填项</span>';
jQuery("#teaProjectDialog div.modal-footer").append(textInfo);
// input获取焦点事件,select获取change事件:必填提示语消失
jQuery('#'+inputID).focus(function(){
jQuery("#teaProjectDialog .warningText").remove();
})
jQuery('#'+selectIdOne+'_control').add(jQuery('#'+selectIdTwo+'control').add(jQuery('#'+selectIdThree+'_control'))).change(function(){
jQuery("#teaProjectDialog .warningText").remove();
})
return false;
}else{
return true;
}
}
今天写的一段js代码,在表单提交时,调用此函数。四个输入:一个用户输入,三个选择下拉框。判断是否为空,如为空输出提示信息,并返回false;反之返回true。(markdown居然代码里不支持换行,还前排自动对其。这个用的比较少,下次换个方法传代码。)