送信前の状態の復帰

  目次







  共通コード



  
<%
Call Response.AddHeader( "Content-Type", "text/html; Charset=shift_jis" )
Response.ExpiresAbsolute=#May 31,2000 23:59:59#

Set MyData = Server.CreateObject("Scripting.Dictionary")
if Request.Form.Count <> 0 then
	For Each strKey In Request.Form
		MyData( strKey ) = Request.Form( strKey )
	Next
end if
if Request.QueryString.Count <> 0 then
	For Each strKey In Request.QueryString
		MyData( strKey ) = Request.QueryString( strKey )
	Next
end if
%>
  



  テキストボックス

  
<FORM>
<INPUT
	type=text
	name=In1001
	value="<%= MyData( "In1001" ) %>"
	maxlength=10
	style='width:100'
>
<INPUT type=submit name=send value="送信">
</FORM>
  



  チェックボックスとラジオボタン

  
<%
' **********************************************************
' サーバー関数
' **********************************************************
function RestoreCheck( strName, strValue, bDefcheck )

	Dim strRet

	strRet = " name=" & strName
	strRet = strRet & " value=" & strValue

	if MyData(strName) = strValue then
		 strRet = strRet & " checked "
	else
		if bDefcheck then
			if MyData("send") = "" then
				 strRet = strRet & " checked "
			end if
		end if
	end if

	RestoreCheck = strRet

end function
%>

<FORM>
<INPUT
	type=checkbox
	<%= RestoreCheck( "In1001", "1", False ) %>
>
<INPUT
	type=radio
	<%= RestoreCheck( "In1002", "1", False ) %>
>
<INPUT
	type=radio
	<%= RestoreCheck( "In1002", "2", True ) %>
>
<INPUT type=submit name=send value="送信">
</FORM>
  



  オプションデータがソース固定のコンボボックス

ディクショナリオブジェクトでオプションデータを作成します

  
<%
' **********************************************************
' サーバー関数
' **********************************************************
function RestoreOption( strName, dicTarget )

	Dim strRet

	For Each strKey In dicTarget.Keys
		strRet = strRet & "<OPTION value="""
		strRet = strRet & strKey & """"
		if MyData(strName) = strKey then
			strRet = strRet & " selected "
		end if
		strRet = strRet & ">"
		strRet = strRet & dicTarget( strKey )
		strRet = strRet & "</OPTION>" & vbCrLf
	Next

	RestoreOption = strRet

end function

Set dicOption = Server.CreateObject("Scripting.Dictionary")
dicOption( "0001" ) = "総務部"
dicOption( "0002" ) = "営業部"
dicOption( "0003" ) = "製造部"
%>

<FORM>
<SELECT
	name=section
>
<%= RestoreOption( "section", dicOption ) %>
</SELECT>
<INPUT type=submit name=send value="送信">
</FORM>
  



  オプションデータをDBより取得するコンボボックス

データーベースアクセスについては、以下を参照して下さい
http://homepage2.nifty.com/lightbox/VA003334/asp051021162010.htm

  
' **********************************************************
' サーバー関数
' **********************************************************
function CreateOption( Cn, Rs, strName, Query )

	Dim strRet

	Call DBGet( Cn, Rs, Query, false )

	Do While not Rs.EOF
		strRet = strRet & "<OPTION value=""" & Rs.Fields(0).Value & """"
		if Rs.Fields(0).Value & "" = MyData(strName) then
			strRet = strRet & " selected "
		end if
		strRet = strRet & ">" & Rs.Fields(1).Value & "</OPTION>" & vbCrLf
		Rs.MoveNext
	Loop

	CreateOption = strRet

end function

Dim strOption
strOption = CreateOption( _
	Cn, _
	Rs, _
	"section", _
	"select 商品分類,名称 from 商品分類マスタ" _
)
%>

<FORM>
<SELECT
	name=section
>
<%= strOption %>
</SELECT>
<INPUT type=submit name=send value="送信">
</FORM>
  



  スクロール位置の復帰

  
<%
	For i = 1 to 100
		Response.Write i & "<br>"
	Next
%>
<SCRIPT language=VBScript>

' **********************************************************
' クライアント関数
' **********************************************************
function frm_onSubmit()

	document.all("SCROLL_Y").value = document.body.scrollTop
	frm_onSubmit = True

end function

</SCRIPT>
<FORM name=frm>
<INPUT type=submit name=send value="送信">
<INPUT type=hidden name=SCROLL_Y>
</FORM>

<%
	For i = 101 to 200
		Response.Write i & "<br>"
	Next
%>

<SCRIPT for=window event=onload language=VBScript>

<%
	if MyData("SCROLL_Y") = "" then
		MyData("SCROLL_Y") = "0"
	end if
%>
	document.body.scrollTop = <%= MyData("SCROLL_Y") %>

</SCRIPT>
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ