快捷键
- 加粗
Ctrl + B
- 斜体
Ctrl + I
- 引用
Ctrl + Q
- 插入链接
Ctrl + L
- 插入代码
Ctrl + K
- 插入图片
Ctrl + G
- 提升标题
Ctrl + H
- 有序列表
Ctrl + O
- 无序列表
Ctrl + U
- 横线
Ctrl + R
- 撤销
Ctrl + Z
- 重做
Ctrl + Y
【JavaScript】全角・半角文字列の正規表現チェックまとめ(ひらがな/カタカナ/漢字・英数字)
/**
文字列チェック
@param input String チェック対象文字列
@param charType String チェック種別
・"zenkaku" : 全角文字(ひらがな・カタカナ・漢字 etc.)
・"hiragana" : 全角ひらがな
・"katakana" : 全角カタカナ
・"alphanumeric" : 半角英数字(大文字・小文字)
・"numeric" : 半角数字
・"alphabetic" : 半角英字(大文字・小文字)
・"upper-alphabetic" : 半角英字(大文字のみ)
・"lower-alphabetic" : 半角英字(小文字のみ)
@return Boolean チェック結果OKかどうか
true : チェックOK(引数に指定した種別の文字列のみで構成されている)
false : チェックNG(引数に指定した種別以外の文字列が含まれている)
*/
function checkCharType(input, charType) {
switch (charType) {
// 全角文字(ひらがな・カタカナ・漢字 etc.)
case "zenkaku":
return (input.match(/^[^\x01-\x7E\xA1-\xDF]+$/)) ? true : false;
// 全角ひらがな
case "hiragana":
return (input.match(/^[\u3041-\u3096]+$/)) ? true : false;
// 全角カタカナ
case "katakana":
return (input.match(/^[\u30a1-\u30f6]+$/)) ? true : false;
// 半角英数字(大文字・小文字)
case "alphanumeric":
return (input.match(/^[0-9a-zA-Z]+$/)) ? true : false;
// 半角数字
case "numeric":
return (input.match(/^[0-9]+$/)) ? true : false;
// 半角英字(大文字・小文字)
case "alphabetic":
return (input.match(/^[a-zA-Z]+$/)) ? true : false;
// 半角英字(大文字のみ)
case "upper-alphabetic":
return (input.match(/^[A-Z]+$/)) ? true : false;
// 半角英字(小文字のみ)
case "lower-alphabetic":
return (input.match(/^[a-z]+$/)) ? true : false;
}
return false;
}
“zenkaku”(全角)の正規表現『^\x01-\x7E』の部分は、つまり『1バイト文字ではないものを探す』って意味ですね。
( [ ](ブラケット)内の “^”(カレット)は”否定”を表す。)
これだけですと半角カナもマッチしてしまうため(半角カナは1バイト以外に該当)、半角カナの文字コード範囲を表す正規表現『\xA1-\xDF』も指定に含めています。
頻繁に全角文字のチェック方法で判断に迷っていた気がする。。。
のでしたが、上記のように正規表現で文字コード範囲を使用する方法が、個人的にはチェック対象文字が分かりやすくて良いのではないかと思います。
※ 例えば “[ぁ-んァ-ン一-龥]” という正規表現でも全角チェックは可能ですが、これは何か微妙なんですよねぇ。。。(只の個人的好み)
问题 : 页面文本框太大,无法调整
我的问题在于只设置了页面宽度,但是却使用了 table 标签,然而 在我的设计中并没有进行把 每行的 4 列属性合并单元格,
我的第一行只有一个 td 需要把剩下的用colspan=”2”合并单元格
<table class="table_border_line_s">
<tr>
<td style="width:100%; text-align:left;" colspan="4">
<input type="button" value="<s:text name="BTN_INSERT"/>" onclick="insertData()" class=btn_mouseout onmouseover="this.className='btn_mouseover'" onmouseout="this.className='btn_mouseout'"/>
</td>
</tr>
<tr>
<!-- 荷主 -->
<td class="list_title_bg_left_s_b" style="width:10%"><span class="text12_orange">□</span>
<s:text name="CONST_MST0020_NNS_NM" />
</td>
<td class="list_data_bg_left_s_b_nr" style="width:15%" colspan="2">
<div>
<input class="easyui-combobox" name="nns_Cd" id="nns_Cd"
style="width:300px"
data-options="
url:'CommonAction!getNNSList?nns_Cd=${nns_Cd}&empty=true',
method:'get',
valueField:'id',
textField:'text',
panelHeight:'150'
" />
</div>
</td>
</tr>
<tr>
<!-- 得意先コード -->
<td class="list_title_bg_left_s_b" style="width:10%"><span class="text12_orange">□</span>
<s:text name="CONST_MST0020_TOKUI_CD" />
</td>
<td class="list_data_bg_left_s_b_nr" style="width:15%">
<input type="text" class="easyui-validatebox" id="tokui_Cd" name="tokui_Cd" value='${tokui_Cd}'/>
</td>
<!-- 荷受人名 -->
<td class="list_title_bg_left_s_b" style="width:10%"><span class="text12_orange">□</span>
<s:text name="CONST_MST0020_NIUKE_HNM" />
</td>
<td class="list_data_bg_left_s_b_nr" style="width:15%">
<input type="text" class="easyui-validatebox" id="niuke_Hnm" name="niuke_Hnm" value='${niuke_Hnm}'/>
</td>
</tr>
</table>
#
<s:hidden id="nns_Cd" name="nns_Cd" value="${nns_Cd}"/>
<input type="hidden" id="edi_Date_Fr" name="edi_Date_Fr" value="${edi_Date_Fr}" />
不写修改sql也可修改方法
Commons-Beanutils工具详解
BeanUtils的使用
Beanutils工具在使用时几乎只用到以下几个方法,其中一个方法通常情况下都是使用匿名内部类,用来注册日期类型转换器,以将字符串类型的数据转换成指定格式的日期类型。
BeanUtils.setProperty(bean, name, value):为指定bean实例的属性设值,等同于bean.setXXX()方法;其中bean是指你将要设置的对象,name指的是将要设置的属性(写成”属性名”),value(想要设置的属性值);
从action给jsp赋值
MST0020Model 是自己的bean
MST0020Model model = mst0020Service.getDetail(condition);
request.setAttribute("model", model);
在页面 ${model.XXX}
request.setAttribute("xxx", xxx);
在页面 ${XXX}
ssh的 struts重定向到 jsp 后取值乱码
在Struts 里加入
<action name="MST0020UpdateAction" method="updateMenu"
class="com.l3s.slp.action.MST0020Action">
<result name="success" type="redirectAction">
<param name="actionName">MST0020InitAction</param>
<param name="menuId">${#request.menuId}</param>
<param name="nns_Cd_S">${#request.nns_Cd_S}</param>
<param name="tokui_Cd_S">${#request.tokui_Cd_S}</param>
<param name="niuke_Hnm_S">${#request.niuke_Hnm_S}</param>
<param name="rows">${#request.rows}</param>
<param name="page">${#request.page}</param>
<param name="method">pageInit</param>
**<param name="encode">true</param>**
</result>
</action>
//<param name="encode">true</param>