sea_clear_sky8です。
[環境]
Win98SE
PWS
[質問内容]
次のページ、前のページ、最初のページ、最後のページっていうのを作って
ページングさせたいのですが、
下記のように一つ一つにHIDDENNを作ると、全部のボタンが表示されている
場合にボタンをクリックすると下記SQLで、Commandオブジェクトのコマンドが設定されていませんとエラーが表示されます。
[SQL]
"select * from test_t " & _
"where name like '%" & Request("nm") & "%' " & _
"order by id " & _
"limit " & Request("page_num")*10 & ",10"
[最初のページ]
response.write "<input type=""Submit"" value=""最初のページ>""onclick=""myClick();"">"
response.write "<input type=""HIDDEN"" name=""page_num"" value=""&0&"">"
[次のページ]
response.write "<input type=""Submit"" value=""次の10件>""onclick=""myClick();"">"
response.write "<input type=""HIDDEN"" name=""page_num"" value=""" & request("page_num")+1 & """>"
[前のページ]
response.write "<input type=""Submit"" value=""前の10件>""onclick=""myClick();"">"
response.write "<input type=""HIDDEN"" name=""page_num"" value=""" & request("page_num")-1& """>"
[最後のページ]
response.write "<input type=""Submit"" value=""最後のページ>""onclick=""myClick();"">"
response.write "<input type=""HIDDEN"" name=""page_num"" value=""" &Abs(Int(-1*(AllCnt/10)))& """>"
エラーの原因は最初のページと最後のページのVALUEの部分のvalue=""&0&""、
value=""" &Abs(Int(-1*(AllCnt/10)))& """の部分の記入の仕方が
おかしいか、各ボタンごとにHIDDENを作成しているため、おかしいのでは
ないかと考えています。
HIDDENを一個にする方法はありますか、
いろいろ考えていますが、考えつかない状態です。
また、他に原因があればよろしくお願いします。
すいませんが、ご教授願います。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
更新処理とページングの処理については
<script type="text/javascript">
<!--
function myClick( num )
{
var pagenum = document.getElementById( "page_num" );
if ( Math.abs( num ) == 1 ) {
// 引数の絶対値が1なら 加減算
pagenum.value = new Number(pagenum.value) + num;
} else {
// それ以外は即値として使用
pagenum.value = num;
}
var frm = document.getElementById("myForm");
// actionを自分自身に変更
frm.action = "1.asp"
frm.submit();
}
// 更新処理用
function myKousin()
{
var frm = document.getElementById("myForm");
// actionを自分自身に変更
frm.action = "kousin.asp"
frm.submit();
}
//-->
</script>
としておいて 更新ボタンの出力を
response.write "<input type=""submit"" value=""更新"" onclick=""return myKousin();"" >"
とします
21件で 4ページ目を表示してしまう件に関しては
変数 nMaxやAllCnt が正しい値なのかをチェックしてみてください
nMax = Int(AllCnt/10) + (-1)*(((AllCnt/10)-Fix(AllCnt/10))>0)
といった具合にしてみてください
sea_clear_skyです。
何回も回答ありがとうございます。
無事正常に動作させることができました。
これもredfox63様のおかげです。
ASPに関連する質問にすべて回答して頂いてありがとうございました。
丁寧にわかりやすく教えて頂いてありがとうございます。
また、機会があれば、何卒よろしくお願いします。
No.2
- 回答日時:
前の回答は寝ぼけていたようです m(__)m
フォームの出力をこのような具合にして
<form id="myForm" method="get">
<%
dim ss, nMax
ss = Request("page_num")
if ss = "" then ss = "0"
'Response.write( "ss : " & ss & "<br>"& vbcrlf)
ss = CInt(ss)
'allcnt = 100
nMax = abs(int(-1 * ( AllCnt/10 ) ) )
response.write "<input type=""submit"" value=""<< 最初"" onclick=""return myClick(0);"">" & vbcrlf
response.write "<input type=""submit"" value=""< 前の10件"" onclick=""return myClick(-1);"""
if ss < 1 then
' 最初のページなら無効にする
Response.write " disabled=""true"" "
end if
response.write ">" & vbcrlf
response.write "<input type=""submit"" value=""次の10件 >"" onclick=""return myClick(1);"""
if ss > nMax -1 then
' 最終ページなら無効にする
Response.write "disabled=""true"" "
end if
response.write ">" & vbcrlf
response.write "<input type=""submit"" value=""最後 >>"" onclick=""return myClick("
response.write nMax
response.write ");"">" & vbcrlf
response.write "<input type=""hidden"" name=""page_num"" value=""" & _
ss & """>" & vbcrlf
%>
</form>
スクリプト側を
<script type="text/javascript">
<!--
function myClick( num )
{
var pagenum = document.getElementById( "page_num" );
if ( Math.abs( num ) == 1 ) {
// 引数の絶対値が1なら 加減算
pagenum.value = new Number(pagenum.value) + num;
} else {
// それ以外は即値として使用
pagenum.value = num;
}
document.getElementById("myForm").submit();
}
//-->
</script>
といった具合でどうでしょう
sea_clear_sky8です。
忙しいところ回答ありがとうございます。
ページ動作で、データベースに21件データがあります。
21件なら3ページが最後のページですなのですが、
最後のページへのボタンを押すと4ページ目になり、データの項目だけ
表示されています。
どう直していいか、わからない状態です。
それと、<Form>にACTIONで更新処理のASPを指定しているのですが、
更新処理のASPを指定すると最初、次へ、前へ、最後へのページで
更新処理をして、ページングができません。
最初、次へ、前へ、最後へのボタンの<INPUT TYPE="Button"に変更しても
Formで更新処理を指定すると、ページングができません。
[フォーム指定]
response.write "<form id=""myForm"" method=""get"" action=""kousin.asp"">"
最初、次へ、前へ、最後へのボタンは教えて頂いたようにしています。
更新ボタンは次のようにしています。
response.write "<input type=""submit"" value=""更新"">"
忙しいところすいません、時間のあるときでいいので、
よろしくお願いします。
No.1
- 回答日時:
HIDDENフィールドは2つでいいように思います
1つは移動先の判断用
次ページなら1、前ページなら-1、最初なら0、最後なら999といった具合にしておく
1つは現在のページを記憶しておくために使用
Response.Write("<input type=""hiddin"" name=""NextPage"" value=""0"">")
Response.write("<input type=""hidden"" name=""NowPage"" value=""" & Request("page_num") & """>" )
[最初][前の10件][次の10件][最後]
などのリンク(またはボタン)のonclickでNextPageの値を変更します
<a onclick="return myClick(0);">[最初]</a>
<a onclick="return myClick(-1);">[前の10件]</a>
<a onclick="return myClick(1);">[次の10件]</a>
<a onclick="return myClick(999);">[最後]</a>
<script type="text/javascript">
<!--
function myClick( num )
{
var objPageNum = document.getElementById("PageNum");
objPageNum.value = num;
document.getelementById("myForm").Submit();
}
//-->
</script>
といった具合でどうでしょう ・・・
sea_clear_sky8です。
回答ありがとうございます。
下記のように変更しましたが、正常に動作しない状態です。
また、HIDDENのNEXTPAGEをどう使用するのかわかりません。
[変更]
次のページ、前のページはpage_numの値を+1,-1しなくてよろしいでしょうか?
function myClick(num)
{
var frm = document.getElementById("page_num");
if(num==1){
frm.value = frm.value + 1
}
else(num==-1){
frm.value = frm.value -1
}
else{
frm.value = num
}
frm.action ="bunkatsu1.ASP";
frm.method= "get"
frm.getElementById("myForm").submit();
}
response.write "<input type=""Submit"" value=""最初>""onclick=""myClick(0);"">"
response.write "<input type=""Submit"" value=""前の10件>""onclick=""myClick(-1);"">"
response.write "<input type=""Submit"" value=""次の10件>""onclick=""myClick(1);"">"
response.write "<input type=""Submit"" value=""最後>""onclick=""myClick(999);"">"
何故か上記の次へ、前へ、最初へ、最後へのボタンを押すと
FORMで指定した更新処理のページへSUBMITします。
以前みたいにJAVASCRIPTからページ移動できなくなっています。
忙しいところすいませんが、よろしくお願いします。
仕事の都合で、この時間帯の返信になりますが、よろしくお願いします。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows10にデュアルブートでXP...
-
onedrive にexcelファイルをア...
-
【VB.NET】App.configにファイ...
-
VB.NET Excelを読み込んでDataT...
-
Windowsで複数のファイルを同じ...
-
C#からvbsを実行したい
-
phpのファイルがブラウザで開か...
-
【VB.NET】Excelの最終行までの...
-
aspxをhtmlに変換する方法について
-
エクセルに張り付けた写真のフ...
-
Accessのトグルボタンでサブフ...
-
VB.NETでMSComm が追加できず?
-
研究する文献がたくさんありま...
-
Windows10エンタープライズ版をインス...
-
vba 空のデータをSplitする時の...
-
VBAでPDFを作成する際、同じ名...
-
グラフをC#のASP.net MVCで表示...
-
【VB.NET】for each文からのINS...
-
SPO2測定
-
高校1年生情報の問題について。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
エクセルに張り付けた写真のフ...
-
【VB.NET】App.configにファイ...
-
Windows10にデュアルブートでXP...
-
aspxをhtmlに変換する方法について
-
バッチで当日日付で作成される...
-
ffftpでファイル取得が0バイト...
-
phpのファイルがブラウザで開か...
-
VB.NET Excelを読み込んでDataT...
-
【VB.NET】Excelの最終行までの...
-
C#からvbsを実行したい
-
vba 空のデータをSplitする時の...
-
VBAでPDFを作成する際、同じ名...
-
キヤノン アソビカメラ iNSPiC ...
-
連想配列を配列に格納したいで...
-
VB.NETでMSComm が追加できず?
-
”KINGSOFT WPSのVBエディタ画面...
-
Excelでボタン(フォームコント...
-
Excelにて、シート間で、データ...
-
Windowsで複数のファイルを同じ...
おすすめ情報