2010年11月26日 星期五

TextBox 千分位自動加上逗號

畫面上新增一個 AMT_txt (Textbox)
Page_Load加入 AMT_txt.Attributes("onkeyup") = "trans_amt('" + AMT_txt.ClientID + "');" 
以下為JavaScript 注意JavaScript的replace只取代第一個相同的字串 必須加上/\ /g
function trans_amt(Name) {
var amt = document.getElementById(Name).value;
var amt_length = amt;
amt = amt.replace(/\,/g, "");
re = /(\d{1,3})(?=(\d{3})+(?:$|\D))/g;
n1 = amt.replace(re, "$1,");
document.getElementById(Name).value = n1;
//var sel = document.selection.createRange();
//sel.moveStart('character', amt_length.length);
//sel.collapse(true);
//sel.select();
}

2010年11月25日 星期四

UserControl 動態控制 Page面頁元件

可使用委派和 AddressOf 運算子解決此問題
1.UserControl (Pager1.ascx)
Partial Class Pager1
Public Event btnClick As EventHandler
Protected Sub btnLAS_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnLAS.Click
'(此事件控制Page頁面元件)
RaiseEvent btnClick(sender, e)
End Sub
End Class
2.Page (bb.aspx.vb)
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
AddHandler Me.Pager1.btnClick, AddressOf pager1_btnClick
End Sub
Private Sub pager1_btnClick(ByVal sender As Object, ByVal e As EventArgs)
'(控制Page頁面的code寫在這裡)
'page_index.Value = TryCast(Pager1.FindControl("Label1"), Label).Text - 1
End Sub

2010年11月9日 星期二

ASP.NET 讀寫dbf 檔

新版的ODBC driver好像不支援了(不確定) 因此我改用oledb 不過記得裝一個檔案叫 vfpoledb.exe 否則會發生錯誤
Dim ora_Conn As New OleDbConnection
Dim dt As New DataTable
Dim connStr As String = "provider=vfpoledb;data Source=c:\"
ora_Conn.ConnectionString = connStr
ora_Conn.Open()
Dim sql As String
sql = "insert into R991025.dbf(SUPPLIER,SUPPMAN,ITEMNO,KINDX,GRADE,PCS,QTYOK,PACKOK,TRN_WAY)"
sql = sql + " VALUES('1','2','3','4','5',6,7,8,'9')"
'sql = "select * from R991025.dbf"
Dim ora_cmd As OleDbCommand = New OleDbCommand(sql, ora_Conn)
ora_cmd = New OleDbCommand(sql, ora_Conn)
ora_cmd.ExecuteNonQuery()
'dt.Load(ora_cmd.ExecuteReader)
Me.GridView1.DataSource = dt
Me.GridView1.DataBind()

2010年11月8日 星期一

ASP.NET換行符號

C# : (包在字串裡)
msg = "test" + "\r\n";
VB.NET :
msg = "test" +vbcrlf

2010年11月5日 星期五

ASP.NET 民國年轉換函數

民國年轉換函數(支援100年) GOOGLE來的,作者不詳... ChangeTaiwanCalendar(DateTime.Now)
Public Shared Function ChangeTaiwanCalendar(ByVal x As DateTime, ByVal format As String) As String
Dim now As DateTime = x Dim tc As New Globalization.TaiwanCalendar() Dim regex As Regex = New System.Text.RegularExpressions.Regex("[yY]+") format = regex.Replace(format, tc.GetYear(x).ToString("000")) Return x.ToString(format) End Function

ASP.NET TextBox 英文自動轉大寫

在TextBox加入此樣式即可
不過要注意如果有寫入資料庫 還是得再轉換一次大寫
style="TEXT-TRANSFORM: uppercase"

SQL SERVER 民國年轉換函數(支援100年)

DECLARE @Format VARCHAR(9)
SET @Format = 'yyy/mm/dd'
SELECT [dbo].[udfTaiwanDateFormat] ([ACCT_DATE], @Format) as 'DATE'

使用jquery.ui.datepicker 判斷自行輸入格式是否符合

If IsDate(chk_cash_date_1.Text) <> True Then
Label4.Text = "日期格式錯誤!"
Exit Sub
End If
Dim date_list() As String
date_list = chk_cash_date_1.Text.Split("/")
If date_list.Count <> 3 Then
ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), "date_error1", "alert('日期格式錯誤!');", True)
Exit Sub
End If
強制改成 yyyy/MM/dd 格式
Dim year_tmp As String
Dim month_tmp As String
Dim date_tmp As String
year_tmp = String.Format("{0:0000}", Convert.ToInt16(date_list(0)))
month_tmp = String.Format("{0:00}", Convert.ToInt16(date_list(1)))
date_tmp = String.Format("{0:00}", Convert.ToInt16(date_list(2)))
Dim merg_date As String = year_tmp + "/" + month_tmp + "/" + date_tmp

ASP.NET 尋找上個月底日期(VB)

ASP.NET 尋找上個月底日期(VB)
DateAdd("D", -1, Year(DateTime.Now) & "/" & Month(DateTime.Now) & "/1")

SQL SERVER 計算昨天日期

SQL SERVER 計算昨天日期
SELECT DATEADD(dd, DATEDIFF(dd,1,getdate()), 0)

SQL SERVER 多筆子查詢

在SQL SERVER裡當子查詢大於一筆資料會報錯 加入下面語法可使子查詢的多筆內容用逗號附加上去
SELECT [Object_Id]
,[Tool_No]
,[Serial_No]
,[Tool_Revision]
,[Sor_No]
,(SELECT [Serial_No] + ',' FROM [ACF_Tooling].[dbo].[Main] WHERE [Tool_Name] = 'BOF' FOR XML PATH('')) as Tool_Name
FROM [ACF_Tooling].[dbo].[Main]

2010年9月22日 星期三

SQL SERVER 預存程序 使用 TRANSACTION

SQL SERVER 2005新增了預存程序的 TRY ..... CATCH 使用上真的方便多了 1.舊式TRANSACTION用法(ASP.NET呼叫此預存程序可傳回指定錯誤說明)
.........
AS
BEGIN TRANSACTION
DECLARE @MSG varchar(30)
BEGIN
IF NOT EXISTS( ...... )
 BEGIN
  SET @MSG = 'a_fail'
  GOTO Error_Handler
 END
ELSE
 BEGIN
  DELETE .....
  SET @MSG = 'true'
 END
  
IF @MSG = 'true'
 BEGIN
    IF NOT EXISTS( ...... )
     BEGIN
      SET @MSG = 'b_fail'
      GOTO Error_Handler
     END
    ELSE
     BEGIN
      DELETE .....
      SET @MSG = 'true'
     END
 END
COMMIT TRAN
Error_Handler:
IF @MSG = 'a_fail' OR @MSG = 'b_fail'
 BEGIN
  ROLLBACK TRANSACTION
 END
SELECT @MSG
END
2. TRANSACTION加入 TRY ..... CATCH 用法(回傳false表示寫入失敗)
.........
AS
BEGIN TRY
 BEGIN TRANSACTION
  DECLARE @MSG varchar(30)
  SET @MSG = 'true'
  INSERT INTO ......
  INSERT INTO ......
  COMMIT TRANSACTION
 END TRY
BEGIN CATCH
  SET @MSG = 'false'
  ROLLBACK TRANSACTION
END CATCH
SELECT @MSG

2010年8月24日 星期二

Masterpage 使用不同層程式目錄所產生問題

最近看到jquery出的一個layout的套件
http://layout.jquery-dev.net/demos.cfm
覺得還不錯 就套用到新的案子上面
我的做法是
使用Masterpage 套用jquery的layout
分為左、上、右
右邊則是開發人員coding的內容
由於是使用jquery的套件 勢必要在Masterpager載入以下套件
jquery-1.4.1.js
jquery.ui.all.js
jquery.layout.js
開發初期相當順利
但當我的page套用這個.master的時候
剛好我的page有用到jquery的套件 但居然不能繼承.master所引用的jquery-1.4.1.js
必須另外載入
這時發生問題 我同時在.master與我的page都載入jquery-1.4.1.js
就出錯了 我不確定是不是jquery layout的問題
因為我想辦法來繼承.master的jquery
抓了文發現了一個好東西

CSS部分不會有這樣的問題 只有 "Script" 才會
當下馬上解決我所有的問題
不過過了幾天又出現另一個問題
我在page頁面加入一個Menu元件時出現以下錯誤

無法修改 Controls 集合,因為控制項包含程式碼區塊 (例如 <% ... %>)

這時我立刻想到是src="<%=ResolveClientUrl...的問題
解決的辦法是 只要將我們需要事先載入的 Script 加到ScriptManager即可
就這麼簡單...







不過相對的 Script 會有先後順序的問題
要注意把接下來的 Script 程式碼code在這段之後才會不出現問題

2010年7月30日 星期五

Windows Server 2008 Standard + IIS7 + ASP.NET 中文亂碼

進入IIS => .net全球化
將預設的utf-8
全部改成big5就ok了!

2010年7月26日 星期一

VC 9.0 runtime (X86) 安裝失敗

最近公司新案子要使用Team Foundation 2010
本想先下載試用版案裝看看 安裝的環境是Server 2008
結果一直卡在必要安裝的VC 9.0 runtime (X86) 安裝失敗
後來將下載的ISO檔燒成DVD 由光碟安裝就解決了
雖然不曉得為什麼 但這就是解決的方法...

2010年7月1日 星期四

Visual Studio 2008 無法 設定為啟始頁

專案發生了一件很吊詭的事
按開始偵錯鈕的時候 應該會直接run專案顯示啟始頁
因為我的案子是開Silverlight專案
他啟始頁會一直跑Silverlight測試頁出來
沒辦法顯示我設定好的啟始頁
解決的辦法就是先將Silverlight專案的資料夾先移除
Compiler後 再新增即可恢復

2010年6月28日 星期一

Gridview 無資料時顯示標頭 header

//dt為DataTable判斷是否為0筆資料
if (dt.Rows.Count == 0)
{
dt.Columns[1].AllowDBNull = true;
dt.Rows.Add(dt.NewRow());
GridView1.DataSource = dt;
GridView1.DataBind();
int columnCount = GridView1.Rows[0].Cells.Count;
GridView1.Rows[0].Cells.Clear();
GridView1.Rows[0].Cells.Add(new TableCell());
GridView1.Rows[0].Cells[0].ColumnSpan = columnCount;
GridView1.Rows[0].Cells[0].Text = "無資料!";
GridView1.RowStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
}
else
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
參考至:http://blog.finalevil.com/2008/11/aspnetgridview01.html

2010年6月23日 星期三

使用 window.showModalDialog 無法彈出視窗問題

//showModalDialog_1.aspx 新增一個iframe

//按鈕內容
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
String filename = hidden2.Value + "_" + hidden1.Value + ".xls";
Response.Write("<script language=javascript>window.location.href='download.aspx?check=true&filename="+ filename +"';</script>");
}
//download.aspx 的page_load加上以下內容
//(必須判斷網頁傳值,不然畫面會無限postback)
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["check"] == "true")
{
String filename = Request.QueryString["filename"];
Response.Redirect("~\\E_mail\\attached\\" + filename);
}}

寫給自已看... showModalDialog 與 LinkButton doPostBack

function upload1() {
var cust_no = document.getElementById("Label10");
returnValue = window.showModalDialog("../E_upload/upload_1.aspx", cust_no.innerText, "dialogWidth=450px;dialogHeight=350px");
}
jQuery(document).ready(function() {
var tmp = window.dialogArguments;
//mail_no
var hidden1 = document.getElementById("hidden1");
//rfq_no
var hidden2 = document.getElementById("hidden2");
var tmparray = tmp.split(",");
var hidden3 = document.getElementById("hidden3");
hidden1.value = tmparray[0];
hidden2.value = tmparray[1];
if (hidden3.value != "load") {
hidden3.value = "load";
__doPostBack('LinkButton2', '');
}
});

DataTable 匯出excel

protected void export_excel(DataTable dt, String filename)
{
System.IO.StringWriter sw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
GridView gv = new GridView();
Response.Clear();
Response.AppendHeader("Content-Disposition", "attachment; filename= " + filename + ".xls");
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "utf-8";
//避免文數字問題(004 => 4),強制轉文字
Response.Write(" <style>");
Response.Write("td{mso-number-format:\"\\@\";}");
Response.Write("</style>");
gv.DataSource = dt;
gv.DataBind();
gv.RenderControl(hw);
Response.Write(sw.ToString());
Response.End();
}

ASP.NET (使用C#) 處理excel檔案

自動產生excel檔 並儲存到server
請先加入參考~
Microsoft.Office.Interop.Excel.Application oExcel = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook oBook = (Microsoft.Office.Interop.Excel.Workbook)oExcel.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);
Microsoft.Office.Interop.Excel.Worksheet oSheet = oBook.Worksheets[1] as Microsoft.Office.Interop.Excel.Worksheet;
//Microsoft.Office.Interop.Excel.Range objExcel_RG = null;
object oMissing = System.Reflection.Missing.Value;
oBook = oExcel.ActiveWorkbook;
oSheet = (Microsoft.Office.Interop.Excel.Worksheet)oBook.Worksheets[1];
oSheet.Cells[1, 1] = "test";
if (System.IO.File.Exists(Server.MapPath("~\\E_mail\\attached\\abc.xls")) == true)
{
System.IO.File.Delete(Server.MapPath("~\\E_mail\\attached\\abc.xls"));
}
oBook.SaveAs(Server.MapPath("~\\E_mail\\attached\\abc.xls"), oMissing, oMissing, oMissing, oMissing, oMissing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, oMissing, oMissing, oMissing,
oMissing,oMissing);
oSheet = null;
oBook = null;
oExcel.Quit();
oExcel = null;
GC.Collect();
非不得以採用此方法 此方法有可能造成EXCEL PROCESS 無法自動刪除問題存在

2010年6月22日 星期二

Delphi 6 與 ASP.NET 使用 Web Service 資料傳輸 (由ASP.NET 傳XML Delphi 6接收)

Delphi 6 引用ASP.NET的Web Service後呼叫test() function 回傳xml 注意事項: 1. DataSet ds 為要傳送給Delphi的資料 2. 將ds轉成xml後再傳送 3. 注意中文問題,要轉成BIG5 4. 假使Delhpi方面只能接收xml內容 請在表頭處強制加上即可中文顯示正常 5. Delphi編輯xml請使用XML Mapping Tool
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Transactions;
using System.Xml;
///

/// tls_export_test 的摘要描述
///
[WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] // 若要允許使用 ASP.NET AJAX 從指令碼呼叫此 Web 服務,請取消註解下一行。 // [System.Web.Script.Services.ScriptService] public class tls_export_test : System.Web.Services.WebService { public tls_export_test() { //如果使用設計的元件,請取消註解下行程式碼 //InitializeComponent(); } [WebMethod] public XmlDataDocument test() { XmlDeclaration xmldec; XmlDataDocument xml = new System.Xml.XmlDataDocument(ds); xml.DataSet.EnforceConstraints = false; xmldec = xml.CreateXmlDeclaration("1.0", "BIG5", null); xml.PrependChild(xmldec); return xml; }}

Delphi 6 與 ASP.NET 使用 Web Service 資料傳輸 (Delphi 6傳XML 由ASP.NET接收)

Delphi 6 引用ASP.NET的Web Service後呼叫test(xml) function 傳入xml 注意事項:
1. xml為Delphi 6傳過來的值 2. 將xml轉成ds後再進行處理
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Transactions;
using System.Xml;
///
/// tls_import_test 的摘要描述/// 
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允許使用 ASP.NET AJAX 從指令碼呼叫此 Web 服務,請取消註解下一行。
// [System.Web.Script.Services.ScriptService]
public class tls_import_test : System.Web.Services.WebService
{
public tls_import_test()
{
//如果使用設計的元件,請取消註解下行程式碼
//InitializeComponent();
}
[WebMethod]
public string test(XmlDocument xml)
{
...................................
DataSet ds = new DataSet();
XmlNodeReader reader = new XmlNodeReader(xml);
ds.ReadXml(reader);
}}

2010年6月17日 星期四

GridView 標題排序 來源為 DataTable 換頁

//將撈出的資料儲存至DataTable dt
Protected Sub init_gv()
.............................
.............................
conn.Open()
cmd = New SqlCommand(sqlstr, conn)
dt.Load(cmd.ExecuteReader) //dt為最後撈出的結果
conn.Close()
ViewState("Dt") = dt
Dim dv As New DataView(dt)
dv.Sort = Session("sort_staus")
GridView1.DataSource = dv
GridView1.DataBind()
End Sub

//換頁Sorting不會亂掉
Protected Sub GridView1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles GridView1.PageIndexChanging
GridView1.PageIndex = e.NewPageIndex
Dim dt As DataTable = DirectCast(ViewState("Dt"), DataTable)
Dim dv As New DataView(dt)
dv.Sort = Session("sort_staus")
GridView1.DataSource = dv
GridView1.DataBind()
End Sub
//加入Sorting
Protected Sub GridView1_Sorting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewSortEventArgs) Handles GridView1.Sorting
Dim dt As DataTable = DirectCast(ViewState("Dt"), DataTable)
Dim dv As New DataView(dt)
If ViewState("Sort").ToString() = " asc" Then
ViewState("Sort") = " desc"
Else
ViewState("Sort") = " asc"
End If
dv.Sort = e.SortExpression + ViewState("Sort").ToString()
Session("sort_staus") = dv.Sort
GridView1.DataSource = dv
ViewState("Dt") = dv.Table
GridView1.DataBind()
End Sub

2010年4月26日 星期一

ASP.NET 手動寫CallBack

此範列是參考董大偉老師的書ASP.NET 深度剖析
當textbox輸入48時,系統會查看資料庫是否已存在
沒有的話,顯示尚未啟用

當輸入至480,資料庫已存在此編號
則顯示此編號已存在

程式碼其實很簡單
.aspx程式加上
<script type="text/ecmascript">
function ReceivedData(dat) {
document.getElementById("Label9").innerHTML = dat;
}
</script>
Label9即為畫面上的結果

public partial class apply : System.Web.UI.Page
, System.Web.UI.ICallbackEventHandler
{
String ret = String.Empty;
protected void Page_Load(object sender, EventArgs e)
{
this.TextBox1.Attributes["onkeyup"] = ClientScript.GetCallbackEventReference(this, "document.all." + this.TextBox1.ClientID + ".value", "ReceivedData", "");
//讓此textbox每輸入一個字,就到資料庫查詢字串是否存在
}
public String GetCallbackResult()
{
return ret;
}
public void RaiseCallbackEvent(String eventArgument)
{ //eventArgument為事件的值,也就是使用者在textbox上輸入的值
try
{
apply_1 check_exist = new apply_1();
String message = String.Empty;
message = check_exist.search002(eventArgument);
if (message == "已存在")
{
ret = "此編號已存在!";
}
if (message == "未存在")
{
ret = "此編號尚未使用!";
}
}
catch (Exception ex)
{
log writelog = new log();
writelog.WriteDebugLog("apply", "RaiseCallbackEvent()", ex.Message);
}
}

ps:此功能懂javascript的人能輕易的寫出,個人認為是否真需要有CallBack這東西?

使用畫面Refresh 避免session遺失

原本session時間是設定在這
<sessionState mode="InProc" cookieless="false" timeout="6000" />
但發現根本沒反應 session一樣會遺失(約20分鐘)
只好自已想辦法
在每一頁放進一個iframe
<iframe width="0" height="0" src="SessionKeeper.aspx"></iframe>
並在此iframe放入
<title>SessionKeeper</title>
<meta http-equiv="refresh" content = "600" />
(600秒畫面自動刷新一次)
發現蠻多人遇過此問題

2010年4月25日 星期日

Web.config 加密

加密:
aspnet_regiis.exe -pef "connectionStrings" "C:\Users\spring\Documents\Visual Studio 2008\ARFQ\ARFQ\ARFQ.Web" -prov "DataProtectionConfigurationProvider"

解密:
aspnet_regiis.exe -pdf "connectionStrings" "C:\Users\spring\Documents\Visual Studio 2008\ARFQ\ARFQ\ARFQ.Web"

2010年4月19日 星期一

抓畫面上滑鼠點下的座標,並show出元件

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
function Hide(flag){
if (flag == 1)
document.getElementById("div1").style.display = "";
document.getElementById("div1").style.left = event.clientX;
document.getElementById("div1").style.top = document.body.scrollTop + event.clientY;
if (flag == 0)
document.getElementById("div1").style.display="none";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>

<div id="div1" style ="display:none;border: 1px solid #A1A31B; position:absolute; height:40px; width:40px; background-color:#FFFFEB; ">
測試
</div>
<input id="Button1" type="button" value="pop.................................................." onclick="Hide(1);"/>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>

2010年4月13日 星期二

TOOLS倒檔預存程序

DECLARE @Main_Obj numeric(18, 0),@Tool_Warehouse varchar(50),@Component_No varchar(50)
DECLARE center CURSOR FOR

SELECT [Object_Id]
,[Tool_Warehouse]
,[Component]
FROM [BusinessQuotation].[dbo].[Main]

OPEN center
DECLARE @NU numeric(18, 0)
DECLARE @SNU VARCHAR(5)

FETCH NEXT FROM center INTO @Main_Obj,@Tool_Warehouse,@Component_No
WHILE @@FETCH_STATUS = 0
BEGIN
SET @NU=1

WHILE @NU<= @Component_No
BEGIN
IF (@NU<10)
BEGIN
SET @SNU='00'+CAST(@NU AS VARCHAR)
END
ELSE
BEGIN
SET @SNU='0'+CAST(@NU AS VARCHAR)
END
INSERT INTO [BusinessQuotation].[dbo].[Component_File]
([Tool_Warehouse],[Main_Obj],[Component_No])
VALUES
(@Tool_Warehouse,@Main_Obj,'C-'+@SNU)

SET @NU=@NU+1
END

FETCH NEXT FROM center INTO @Main_Obj,@Tool_Warehouse,@Component_No
END
CLOSE center
DEALLOCATE center

2010年3月12日 星期五

解決 Jquery + UpdatePanel 產生問題

同時使用Jquery + UpdatePanel 常會發生Jquery只會執行一次
之後就被UpdatePanel的非同步所擋住
雖然新版的Jquery有新增live()的函數
不過好像沒辦法使用在所有的情況下
解決的辦法如下:

//下面為第一次執行的Jquery
jQuery(document).ready(function() {
jQuery("#TextBox4").dynDateTime();
});

//每次進行非同步時,執行下面語法
function load() {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest EndRequestHandler);
}
function EndRequestHandler() {
jQuery("#TextBox4").dynDateTime();
}

2010年3月5日 星期五

Just-In-Time 偵錯

使用一般程式出現Just-In-Time 偵錯時解決辦法~
引用自~ http://msdn.microsoft.com/zh-tw/library/5hs4b7a6(VS.80).aspx

在伺服器上安裝 Visual Studio 後,發生未處理例外狀況的預設行為是顯示需要使用者操作的 [例外狀況] 對話方塊,以便啟動 Just-In-Time 偵錯或忽略例外狀況。自動作業則不希望發生這種情況。若要設定伺服器在發生未處理例外狀況時不再顯示對話方塊 (安裝 Visual Studio 之前的預設行為),請使用登錄編輯程式刪除下列登錄機碼:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\DbgManagedDebugger

在 64 位元作業系統上也請刪除下列登錄機碼:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgManagedDebugger