js版本
http://msdn.microsoft.com/zh-cn/library/az24scfc.aspx
.net 版本
http://msdn.microsoft.com/zh-tw/library/20bw873z.aspx
範例(特殊字元過濾)
http://blog.miniasp.com/post/2010/04/27/How-to-filter-special-characters-using-NET-Regex.aspx
相關資源:
http://blog.miniasp.com/post/2008/03/Regular-Expression-Regex-Learning-Resources.aspx
eMail 正則式:
http://design2u.me/blog/896/javascri-t-regular-expression-email-form-validation
測試工具:
Expresso 3.0 上網註冊免費序號
否則只有5天又12小時可使用
2012年12月26日 星期三
2012年12月20日 星期四
{C#.JavaScript} HtmlEncode Htmldecode 寫法
將字串、連結做編碼、解碼寫法
JavaScript:
//Encode
var abc="this is a book";
var encode = escape(abc);
//Decode
var abc="this is a book";
var encode = unescape(abc);
C# 寫法於參考資料
參考資料:
http://blog.miniasp.com/post/2008/11/Explain-web-related-encoding-decoding-method-in-detail.aspx
JavaScript:
//Encode
var abc="this is a book";
var encode = escape(abc);
//Decode
var abc="this is a book";
var encode = unescape(abc);
C# 寫法於參考資料
參考資料:
http://blog.miniasp.com/post/2008/11/Explain-web-related-encoding-decoding-method-in-detail.aspx
{C#} Transaction-Entity(未實作)
參考資訊
http://blog.darkthread.net/post-2012-12-19-transactionscope-suppress.aspx
2012年12月19日 星期三
{JQuery} dialog 顯示「正在....」畫面
$(document).ready(function () {
$("#dialog:ui-dialog").dialog("destroy");
$('#Button1').click(function () {
var dlg = $("#<%=DivPage.ClientID%>").dialog({
modal: true,
height: 200,
width: 400
});
$('a.ui-dialog-titlebar-close').hide();
$("#<%=DivPage.ClientID%>").dialog("open");
dlg.parent().appendTo(jQuery("form:first"));
$("#dialog:ui-dialog").dialog("destroy");
});
//當程序運作完成時,關閉
$('#Button2').click(function () {
$("#<%=DivUploadIframePage.ClientID%>").dialog("close");
});
});
<form>
<body>
<div runat="server" id="DivPage" title="Please Wait..." style="width: 260px;
height: 400px; display: none">
<table width="100%" class="f12black">
<tr>
<td align="center">
正在加載中,請稍後...<br />
</td>
</tr>
</table>
</div>
</body>
</form>
API:http://api.jqueryui.com/dialog/#option-buttons
2012年12月6日 星期四
{C#} Transaction-Linq
//此例可直接運用 context.SubmitChanges();自動執行Transaction,
此側僅供自訂Transaction code參考用
using (var context = new ServiceDataContext())
{
try
{
context.Connection.Open();
context.Transaction = context.Connection.BeginTransaction();
var query = context.tableA.Where(s => s.DocId == DocId).ToList();
if (query.Count > 0)
{
context.tableA.DeleteAllOnSubmit(query);
context.SubmitChanges();
}
context.tableA.InsertOnSubmit(pNewItemA);
context.SubmitChanges();
var queryTT = context.tableB.Where(s => s.DocId ==DocId).ToList();
if (queryTT.Count > 0)
{
context.tableB.DeleteAllOnSubmit(queryTT);
context.SubmitChanges();
}
context.tableB.InsertOnSubmit(pNewItemB);
context.SubmitChanges();
context.Transaction.Commit();
return "Successful";
}
catch (Exception ex)
{
context.Transaction.Rollback();
return ex.Message;
}
}
註記:
1.Linq2SQL will use an implicit transaction. If all of your updates are done within a single Submit, you may not need to handle the transaction yourself.
當只執行一SubmitChanges()時,會自動啟動Transaction 機制
故如非同一context 時,才需自訂Transaction
參考資料:
http://blog.darkthread.net/blogs/darkthreadtw/archive/2009/06/12/3037.aspx
http://stackoverflow.com/questions/542525/transactionscope-vs-transaction-in-linq-to-sql
http://72.15.222.47/post-2008-05-14-transaction-in-linq-to-sql.aspx
//Update之Transaction 相關
http://72.15.222.47/post-2009-07-14-linq-to-sql-research1.aspx
http://blog.miniasp.com/post/2008/05/Resolve-LINQ-to-SQL-Change-Conflict-Exception.aspx
{JavaScript} 取代多個字符、控制項中游標位置、日期轉換
function RemoveFormate(num) {
//取代多個逗號
var str = /,/gi;
return num.replace(str, '').replace('.00', '');
}
//要游標出現的字串位置--傳入控制項內字串中所要放的位置
function startFocus(range) {
var e = event.srcElement;
var r = e.createTextRange();
r.moveStart("character", e.value.length);
r.collapse(true);
r.select();
}
//Example:
//游標停的位子在字串最後面
startFocus($(this).val().length);
//日期轉換
function TransferDateFormate(dateString) {
if (dateString != null) {
if (dateString.indexOf("/Date") == -1 && dateString.indexOf("/") == -1) {
var dateFormate = dateString.substring(0, 4) + "/" + dateString.substring(4, 6) + "/" + dateString.substring(6, 8);
return dateFormate;
} else if (dateString.indexOf("/Date") != -1) {
var date = eval("(new Date(" + dateString.replace("/Date(", "").replace(")/", "") + "))");
var dateFormate = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + date.getDate();
if (dateFormate == "1/1/1") dateFormate = "N/A"
return dateFormate;
}
return dateString;
}
return '';
}
參考資料:
http://www.cnblogs.com/taobox/archive/2012/11/23/2784760.html
{JavaScript} 小數位補零、檢查是否為數值、四捨五入
//小數位不足自動補零
function showAsFloat(n) {
return parseFloat(n).toFixed(2);
}
//檢查是否是數字
function checkFormate(num) {
num = num + "";
//去掉一個小數點(如有二個小數點也會出現警示
num = num.replace('.', '');
//只能输入有0~2位小数的正实数
// var re = /^[0-9]+(.[0-9]{0,2})?$/;
if (num != '') {
//無限制小數數量
var re = /^[0-9]+(.[0-9])?$/;
if (!re.test(num) || num < 0) {
return false;
}
}
return true;
}
//四捨五入
function round(num, pos) {
var size = Math.pow(10, pos);
return Math.round(num * size) / size;
}
參考資料:
正則式:http://www.dotblogs.com.tw/killysss/archive/2009/11/18/12039.aspx
{JavaScript} JS控制控制項Enable、Visible
// Visible 不顯示(不出現在Html中)
if ($('#<%=select.ClientID%>').find("option:selected").val() != '我選了')
$('#<%=trCPSDMailNotice.ClientID%>').attr('style', 'display:none');
//出現
else
$('#<%=trCPSDMailNotice.ClientID%>').attr('style', 'display:');
//Enable 顯示但不可用
if (!$('#<%=chkBoth.ClientID%>')[0].checked)
$('#<%=txtMyFare.ClientID%>').attr('disabled', 'disabled');
//顯示且可用
else
$('#<%=txtMyFare.ClientID%>').removeAttr('disabled');
訂閱:
文章 (Atom)