2018年6月26日 星期二

[JQuary][C#]使用jQuary實作form action post參數

網頁轉址一般分為 1.直接導向Url 2.夾帶Get參數在Url後面

如果要使用Post的方式要如何跳轉呢?

Ans:使用Form Action 設定Method='Post'

範例前端程式
------------------------------------------------------
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <title></title>
</head>
<body>
    <form id="form1" method="post" runat="server">
        <div>
            <asp:HiddenField ID="hidENG_ID" runat="server" ClientIDMode="Static" />
            <asp:HiddenField ID="hidToken" runat="server" ClientIDMode="Static" />
        </div>
    </form>

    <form id="form2" method="post">
        <div>
            <input id="Token" name="Token" type="text" value="" />
            <input id="GetLoadRRFP" type="submit" value="Submit" />
        </div>
    </form>

    <script>
        function GetLoadRRFP() {
            //$.post($("#hidENG_ID").val(), { "Token" : $("#hidToken").val()});
            $("#Token").val($("#hidToken").val());
            $('#form2').attr('action', $("#hidENG_ID").val());

            $("form2").submit(function (event) {
                event.preventDefault();
            });
        }

        $(document).ready(function () {
            GetLoadRRFP();
            $('#form2').submit();
        });
    </script>
</body>
</html>
------------------------------------------------------

範例後端程式
------------------------------------------------------
protected void Page_Load(object sender, EventArgs e)
{
        hidENG_ID.Value = "http://xxx.xxx.xxx.xxx/";
        hidToken.Value = "TokenValues";
}
------------------------------------------------------

開啟新頁面在PageLoad事件中將數值設定至前端物件,並將參數設置至要Post的Form中,完成後觸發Submit事件即可達成目的


2018年6月6日 星期三

[GIS][MS-SQL]匯入ShapeFile檔案資料到MS-SQL

1.到網站下載Shape2SQL->網站

2.使用QGIS開啟ShapeFile檔案

3.查看檔案 > 右鍵 > Properties > Source > 編碼[UTF-8]

4.轉座標格式 [EX:W84:3857]

5.開啟Shape2SQL執行檔 > Shape2Sql.exe

6.Shapefile選擇檔案位置 > Server選擇要更新資料庫 > Table Name輸入資料表名稱 > 勾選想要的欄位

7.點擊Upload to Database > 完成

2018年6月3日 星期日

[C#, Windows]Excel讀取出現['Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上]錯誤,解決方法

使用C#讀取Excel
讀取範例程式碼
---------------------------------------------------------------------------------------------------
 string tableName = "[" + sheet + "$]";//在頁簽名稱後加$,再用中括號[]包起來
 string sql = "SELECT * FROM " + tableName;//SQL查詢
 OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data   Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1;Readonly=0'");
 OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);
 DataTable dt = new DataTable();

  try
  {
      da.Fill(dt);//第一行為標頭
   }
   catch (Exception ex)
   {}
   finally
   {
      conn.Close();
   }
----------------------------------------------------------------------------------------------------
解決方法
原因:Office版本太新,需要使用舊版本的連線元件,下載網址如下
2007 Office system 驅動程式:資料連線元件

[JQuary][C#]使用jQuary實作form action post參數

網頁轉址一般分為 1.直接導向Url 2.夾帶Get參數在Url後面 如果要使用Post的方式要如何跳轉呢? Ans:使用Form Action 設定Method='Post' 範例前端程式 -----------------------------...