【質問】ASP.NETスレ Part2【議論】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2005/03/22(火) 17:32:11ID:???Part1 - 【質問】 ASP.NETスレ 【議論】
http://pc5.2ch.net/php/kako/1040/10406/1040698263.html
0803802
2006/08/04(金) 23:15:09ID:???If Not IsPostBack And Not Response.Cookies Is Nothing Then
じゃなくて
If Not IsPostBack And Not Response.Cookies("userName") Is Nothing Then
とは書いてました。
いろいろサンプルコードとか見てみてもこれで良さそうなんですが。。。
0804802
2006/08/04(金) 23:59:49ID:???ボタンをクリックしたときは、クッキーの記録ファイルは作られ、
ちゃんと保存もされています。
ところが
Not Response.Cookies("userName") Is Nothing
を通過するとファイルが消えます。
If文を消して
TextBox1.Text = Response.Cookies("userName").Value
を実行させたときも、ファイルが消えます。
とにかく、保存されたクッキーにアクセスがあると勝手に消えて
しまいます。どうしたらよいでしょうか?
0806nobodyさん
2006/08/05(土) 21:24:08ID:???0807nobodyさん
2006/08/05(土) 21:30:05ID:???http://nyannyan3.minidns.net/up/up001/File/2006_08_05-Dukan.aspx
0809nobodyさん
2006/08/06(日) 08:57:11ID:???初めてこのスレに来たので亀レス。
Updateメソッドを利用するってことは、複数レコードを一回の操作で更新するとかそんな感じ?
ObjectDataSource使うと良いんじゃないかな。
DataSourceのクラスにDataSetの更新とDB更新の二つのメソッドを用意してだな。
GridViewの編集→更新で、Datasetの更新。
確定時にDBの更新メソッドを走らせる。
時間が無くて、元ロジックそのまま使い回すなら
前に使ってたクラスを扱うラッピングクラスを作ってそれをDataSourceにするとかー…
見当違いだったらゴメソ
0810nobodyさん
2006/08/06(日) 13:03:06ID:Yu3xhKAcASPの場合に記述する Set bobj = Server.CreateObject("basp21")
のようなオブジェクトの作成方法がわかりません・・・
どなたか教えていただけませんか?お願いします。
0811nobodyさん
2006/08/06(日) 14:29:36ID:???Dim basp As New BASP21Lib.Basp21
Dim result As String
result = basp.SendMail("Server", "To", "From", "Subject", "Body", "")
プロバイダの設定が上手く行かなくてハマってるんだけど、誰か似たような経験ある人居る?
<ConnectionStrings>
<add name="testConn" (SQLServerを接続先に指定)/>
</ConnectionStrings>
<メンバシップ プロバイダの指定 → testConn>
<プロファイル プロバイダの指定 → testConn>
<ロール プロバイダの指定 → testConn>
こうやって接続先を指定しているにもかかわらず、
実際にログインコントロールを走らせるとLocalSqlServer見に行ってしまうんだよなぁOTL
(machin.configにデフォルトで書かれているアレを見に行ってしまうんだなw)
スタックトレースを見ると、ロールのインスタンス作るときにLocalSqlServerを見に行ってる感じ。
web.configでLocalSqlServerの接続先を上書きしてしまえば狙った動きはするんだけど、
なんか納得行かないー
0812nobodyさん
2006/08/06(日) 20:26:01ID:???0813nobodyさん
2006/08/06(日) 21:28:16ID:???0814nobodyさん
2006/08/07(月) 08:28:12ID:???0815802
2006/08/08(火) 00:39:08ID:???Request.Cookiesでクッキーの取得は出来たのですが、テキストボックスに
返した日本語がどうしても文字化けしてしまいます。
文字コードの変換をしなければならないのでしょうが、どうしてもわかり
ません。
重ね重ね申し訳ありませんが、お教えいただけませんでしょうか?
0818nobodyさん
2006/08/08(火) 11:21:26ID:???0819nobodyさん
2006/08/08(火) 17:11:45ID:n2+YSk39ありがとうございました!
早速、
Dim Server As String = "smtp.mail.yahoo.co.jp"
Dim To As String = "***@yahoo.co.jp"
Dim result As String
result = basp.SendMail("Server", "To", "From", "Subject", "Body", "")
と記述して、メールを送ってみたのですが、
いっこうにメールが届きません・・・
0820811
2006/08/08(火) 20:34:57ID:???っhttp://help.yahoo.co.jp/help/jp/mail/anti-spam/anti-spam-49.html
っhttp://www.hi-ho.ne.jp/babaq/basp21.html
0821nobodyさん
2006/08/09(水) 13:45:51ID:???遅レスですが、ログインコントロールを完全に自前のテーブルで
使うとしたら、MembershipProviderをカスタマイズする必要がありそうです。
http://msdn.microsoft.com/asp.net/downloads/providers/default.aspx?pull=/library/en-us/dnaspp/html/asp2prvdr01.asp
の上の方に「ProviderToolkitSamples.msi」のリンクがあります。
これをインストールすると各種プロバイダのサンプルソースが展開されます。
これを参考にしてカスタマイズすれば何とかなるでしょう。
SqlConnectionHelper.csのCheckPasswordメソッドのあたり。
ただ他との絡みもあるので、一筋縄ではいかないかも。
上記リンクの親ページ
http://msdn.microsoft.com/asp.net/downloads/providers/default.aspx
のあたりも内容がディープですが読んでみると参考になるかと。
0823nobodyさん
2006/08/09(水) 17:27:52ID:???ボタンを押したときに「入力項目のエラーチェック(サーバーサイド)→"登録してよろしいですか?"等のダイアログの表示(クライアントサイド)→データ登録処理(サーバーサイド)」
という動作をさせたいのですが、Button.Attributes.Addメソッドでダイアログを表示させる方法だと、
エラーチェックをする前にダイアログが表示されてしまいます。
ダイアログを任意のタイミングで表示させる方法がありましたらご教授お願いします。
0824nobodyさん
2006/08/09(水) 17:33:54ID:03ztM589デザインはファイルを参照して選んでアップロードボタンを押すという単純なものです
下のコードはVB側のコードです。
どこもエラーがないのにうまくできませんどうしてでしょうか?
Partial Class FileUpload
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim httpPostedFile As HttpPostedFile
httpPostedFile = Request.Files("C:\userfile.txt")
Dim splitString() As String
Dim fileName As String
splitString = httpPostedFile.FileName.Split("\\")
fileName = splitString(splitString.Length - 1)
httpPostedFile.SaveAs(Request.PhysicalApplicationPath + fileName)
Label1.Text = "アップロードされました。"
Catch ex As Exception
Label1.Text = ex.Message
End Try
End Sub
End Class
実行するとオブジェクト参照がオブジェクト インスタンスに設定されていません。
とでてきます。
0825nobodyさん
2006/08/09(水) 17:38:38ID:???ASP.NETの本ってほとんどVB使ってるし
0826nobodyさん
2006/08/09(水) 17:49:25ID:03ztM589ASP.NETの拡張子を見てくださいaspx.vbとなってるはずです
ASPとはデザイン側はHTMLで動作はすべてVBです。
もちろんC#をやっとけばVBに近いので損はないですが基本的に別物です。
0827nobodyさん
2006/08/09(水) 19:24:10ID:???だがIE7ではもう動かなくなるな。
0828nobodyさん
2006/08/09(水) 19:24:49ID:???0829nobodyさん
2006/08/09(水) 19:25:29ID:???0830nobodyさん
2006/08/09(水) 19:47:10ID:???釣られてやるか……。
あんたがVB.NETのプロジェクト選択してからaspx.vbなだけで、C♯を選択していればaspx.csだよ。
デザイナで自動生成されるコードもC♯だ。
クライアントでVBScript言語を動作させることもあるが、VB.NETとは別物だし今は廃れている。
>>825
C♯だけで十分、MSDNはC♯のコードがあるだろ。VB.NETしか書いてないASP.NETの本なんか捨てろ。
むしろJavaScript知ってた方がASP.NETでは役に立つ。
0831nobodyさん
2006/08/09(水) 20:41:58ID:???0832nobodyさん
2006/08/10(木) 03:05:52ID:???>>826 は VB.net, ASP.net のどちらもまともに使えてないと思う・・・
0834nobodyさん
2006/08/10(木) 19:43:40ID:???私はファイルロックを実現するために
Applicationオブジェクトを使ってますが
正しい方法なのかはわかりません。
0835nobodyさん
2006/08/10(木) 20:32:14ID:???ファイルの読み書きの際にフラグとしてフォルダを作成して
終わったら削除するというどこかのHPに載ってた方法で妥協しますた
1日100アクセスもないHPだし
0836nobodyさん
2006/08/11(金) 09:50:21ID:???0837nobodyさん
2006/08/14(月) 17:33:17ID:RwKIUsyQいい質問だ。誰か教えろ。
0838nobodyさん
2006/08/14(月) 21:14:33ID:???1. this.MapPath
2. server.MapPath
は、次のメソッドを指すとエスパーする。
1. System.Web.UI.Page.MapPath(string path)
2. System.Web.HttpServerUtility.MapPath(string path)
Reflectorで見ると、どちらも結局は
internal string System.Web.HttpRequest.MapPath(VirtualPath virtualPath, VirtualPath baseVirtualDir, true);
を使っている。完全に同じではないかもしれないが、ほぼ同じものじゃねーのって感じ。
0839nobodyさん
2006/08/14(月) 23:31:06ID:???同じ結果が返ってきた気がする。
なんで同じメソッドを2つも用意したのだろうね〜?
0840nobodyさん
2006/08/15(火) 04:27:47ID:???0841nobodyさん
2006/08/15(火) 12:30:32ID:???ユーザ名とパスワードくらいしか管理できません。
年齢や、性別など、プロフィール情報を管理する良い方法はありますか?
ASPNETDB.MDF以外に、新たなDBとテーブルを作るべきでしょうか?
0842nobodyさん
2006/08/16(水) 00:10:15ID:???ASPNETDB.MDF って何がうれしいの?
重要?
0843nobodyさん
2006/08/16(水) 01:51:53ID:???0845nobodyさん
2006/08/16(水) 02:58:09ID:???0846nobodyさん
2006/08/16(水) 16:33:19ID:???特にユーザー名(cs-username)ってのは、IIS6.0のログに出力できますか?
0847nobodyさん
2006/08/16(水) 23:18:12ID:???ASP.NETのwebサイト管理ツールを起動すると
「エラーが発生しました。前のページに戻って、もう一度やり直してください。 」
と、出て起動できません。
何が対策方法とかありますか?
0848nobodyさん
2006/08/19(土) 17:51:41ID:???デフォルトじゃ出来ないっぽいですね
偽装使ってASP.NETワーカープロセスの権限では書き込めない筈。
間違ってたらすいません
ここのチップスもしくは掲示板に結構色んな質問があるので
こちらで調べるといいかも
↓
ttp://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
0849848
2006/08/19(土) 17:57:29ID:???×偽装使って
○偽装使わないと
0850nobodyさん
2006/08/19(土) 21:34:33ID:???HttpResponse.AppendToLog で目的は果たせるんじゃない?
0851nobodyさん
2006/08/20(日) 01:16:11ID:???一定時間おきに自動更新がしたかったのでMETAで更新することにしますた
するとテキストボックスに入力中に自動更新とかぶると入力中の文字がきえてしまいまつ
マスターページをつかってみたけど結果はかわらず
しかたなくフレームでテキストボックスを区切ることにしまつた
ほかにいい方法あれば教えてくださいエロイ人
0852nobodyさん
2006/08/20(日) 17:00:23ID:???0853nobodyさん
2006/08/25(金) 20:46:41ID:CnHG+g6h0854nobodyさん
2006/08/25(金) 23:42:41ID:u/xDTKmg宜しくお願いします。
非ASP.NETアプリからのSubmitをASP.NETで受ける際に、複数のチェックボックスのような
同じ名前のRequestパラメータを取得するにはどうすればいいのですか?
0855nobodyさん
2006/08/26(土) 00:51:23ID:???フォーム認証とロールの設定は出来ましたが、負荷を考えて同時にアクセス数を10人程度に制限がしたいのです
どうやって人数をカウントをするか悩んでいます。Global.asaxで認証した時に起こるイベントハンドラがありますので
そこから、認証時の人数をカウントしようかと思ったのですが、ログアウトの検出をどうやってやるのかがわかりません。
どなたかご存知でしたら御教授ねがえますか?
0856nobodyさん
2006/08/26(土) 02:09:58ID:???ほとんどの人が、ブラウザのウィンドウを閉じちゃうからね。
どうすればいいんだろ?
0857nobodyさん
2006/08/26(土) 14:44:21ID:???そんなもんアクセスログつくっておけばいいんじゃねーの?
で、アクセスきたらそいつのIPを時間とともに書き込んで
ログアウトするか一定時間経過してたら削除 で、10人以上ログに記録されてたらログイン失敗といった感じで
ログアウトって言ってもログアウトまんどくさい派はログアウトしないで終了するかもしれんし
PCの不具合でお亡くなりになるとやっぱりログアウトの監視なんて事実上不可能だし
TCP/IPとかで通信してるなら切断したのわかるがフォーム認証ってWebフォームのことでしょ?
0858nobodyさん
2006/08/26(土) 23:45:12ID:???とりあえずMembership.GetNumberOfUsersOnline メソッド
しかし負荷を考えて10人程度って、どんなサイトだよ。
0859nobodyさん
2006/08/26(土) 23:48:16ID:???しばらく誰も使えないなんてふざけたことになる可能性もあるから、
十分検討した方がいいぞ。
0860nobodyさん
2006/08/27(日) 00:55:45ID:T4ypEbNf3時間ほど迷ったのですがわからなかったので。
<HEAD>
<script language="javascript">
function OpenWindow()
{
window.open("http://www.yahoo.co.jp","_blank");
}
</script>
</HEAD>
↑みたいな感じでHEAD内にJavaScriptの関数を定義します。
これをとあるサイトで
Response.Write(OpenWindow())
とすれば呼び出せるとの記述を見つけたのですがうまくいきません。
Response.Write("OpenWindow()")
と変更したのですがこれだと呼び出したページに「OpenWindow()」という
文字が描画されてしまいました。
自分で定義したjavascriptの関数をvb内から呼び出すにはどうすればよいでしょうか?
よろしくお願いします。
0862860
2006/08/27(日) 02:41:34ID:???すみません、表現が悪かったです。
実際には自作したjavascriptのfunctionをクライアント側で
実行させたいのです。
>>860の例で言うなら
クライアント側で新しいウィンドウを作成し、
yahooを表示したいと思っています。
0863861
2006/08/27(日) 02:50:10ID:???単純にscriptタグ書き出せば良いのでは?
0864860
2006/08/27(日) 02:59:44ID:???もちろんそれも方法の一つなのですが
その方法だと数カ所で同じ関数を使ってる場合
修正する必要が出た時につらそうだというのと
scriptタグの書き出しは使用しない方が良いという
解説を見かけたので避けたいと思っています。
>>860の方法は不可能ですか?
0866nobodyさん
2006/08/27(日) 05:16:26ID:???Register??Script
系のではできないの?
あるいはボタン押したときとかならOnClientClickプロパティとか。
0867860
2006/08/27(日) 06:06:52ID:???>Register??Script
これってなんでしょうか。
もう少し詳しく教えてもらっていいでしょうか?
ちなみにどこで使おうとしているかというと
DataListコントロールの中で
System.Web.UI.WebControls.ImageButtonコントロールを使用していて
画像がクリックされたら別窓で拡大された画像を表示しようとしています。
javascriptを使用する理由は別ウィンドウを開く際、
開くウィンドウの高さ、幅の制御等を行いたいからです。
OnClientClickプロパティはSystem.Web.UI.WebControls.ImageButtonで
使用できないようなので。。
こういう処理の場合どうやって実装するべきなんでしょうか?
0868nobodyさん
2006/08/27(日) 13:02:46ID:???少なくとも、ImageButtonコントロールの
OnClientClick プロパティ は使えると思うけど。
0869nobodyさん
2006/08/27(日) 15:32:14ID:bPHgPhjgそっちにのりかえたほうがいいのかなと思ってるとこなんですけど、ASP.netとphpってどっちが
いいの?
0870860
2006/08/27(日) 16:31:36ID:???ありがとうございます。
DataListの中に入っているImageButtonコントロールのOnClickイベントに
関連付けるべく以下のコードに修正しました。
<asp:ImageButton id=ImageButton1 runat="server" OnClick="OpenWindow" ImageUrl='<%# DataBinder.Eval(Container, "DataItem.CD", "{0}.jpg") %>' CommandName="select">
IEにて実行したところ
コンパイラ エラー メッセージ: BC30456: 'OpenWindow' は 'ASP.Details_aspx' のメンバではありません。
と表示されてしまいました。
教えていただいたリンク先のサンプルを元に試したところ
サンプルがVBScriptだったのでVBScriptで書き、サンプルには「runat="server"」
とあったので同じようにしたところOnClickイベントを捕らえることができたのですが
サンプルはクリックされた座標をラベルコントロールに表示するもので
これだとサーバーサイドで実行されるのでクライアントサイドで
新しいウィンドウを表示させるようにするのとはちょっと違う気がします。
OnClickイベントを使用してクライアントサイドで実行させるjavascriptを
投げることはできないのでしょうか?
0871nobodyさん
2006/08/27(日) 18:59:17ID:???リナクソでも使いたいならPHPのほうがイイ
0872nobodyさん
2006/08/27(日) 21:51:45ID:???OnClickでできないできないってわめくのはなぜ?
0873nobodyさん
2006/08/28(月) 13:50:38ID:???ASP.NET1.1だからじゃね?
ASP.NET1.1のボタンコントロールなら、コードビハインドで
.AddAttribute("onclick", ファンクション名)
後はhtmlのボタンをサーバーコントロールとして実行という手もあるな。
0874nobodyさん
2006/08/28(月) 21:46:56ID:???WinXP Pro ASP2.0 VWD で作成し正常動作したASPページを、Win2kのPCに持って行くと動きません。
Win2kの方は、IISと.NET Framework2.0をインストールしたままで特にいじってません。
Web.Config内のroleManager enabled="true"は変です。というエラーがでるので、これをfalse
にしてみてもやっぱり変ですというエラーがでます。でこの一行を消すと、ローカルhttp://localhost
では動きますが、外部からアクセスするとRuntime Errorで動きません。
どなたか解決法を教えていただけませんでしょうか?
0875nobodyさん
2006/08/28(月) 22:23:30ID:wP3k1/vQもれはVWDで作成されたWeb。Configだけ消すと何事もなかったかのように動く
あと書き込み処理とかあるファイルのパーミッションはかえてるよな?
エラー内容もUPしてみ?
0876860
2006/08/28(月) 23:06:18ID:???正直言いますとOnClientClickをOnClickと読み違えてました。
でも動かなかったので凄く悩みました。
>>873の言う通り1.1でした。
自分自身2と思ってたんですが。。
おかげさまで動作確認できました。
ところがこの方法だと実際はImageButtonがDataGrid(DataList)中の中にあり、
表示させる画像のパスは同じレコードの別フィールドから作成するため
実用的ではありませんでした。
>>872のAddAttribute("onclick", ファンクション名) という方法を使っても
ファンクションに引数として同じレコードの情報を渡すことができないからです。
そこで当初の通りImageButtonのCommandNameに「select」を使用し、
DataGridのSelectedIndexChangedイベントの中で動的にjavascriptを作成し、
Response.Writeでクライアントに投げることで要件を満たすことができました。
ですがこの方法だとクリックするだけでページがリロードされてしまい、
スクロールバーが最上位まで戻ってしまい不便です。
0877860
2006/08/28(月) 23:13:08ID:???実際やりたいことは
DataGridを使用して表示されたレコード群の中の
小さい画像(ImageButton)がクリックされたら
クライアント側に別ウィンドウとしてその画像の大きな画像を
ウィンドウサイズ等を指定して表示したいのです。
こういう場合どういう方法が一般的なんでしょうか?
ImageButtonを「CommandName=select」として使用し、
DataGridのSelectedIndexChangedイベントで
javascriptでウィンドウサイズ等を指定してクライアントに投げた場合、
クリック時ページがリロードされてしまいスクロールバーの位置が最上位に
戻ります。
かといってImageButtonのOnClick(OnClientClick)等のイベントで
javascriptを用いてクライアント側にウィンドウを開けさせようと場合、
開くべき画像パスの情報をクリックされた画像のレコードの情報を
引数として渡すことができないです。
こういう場合みなさんならどうやって作成しますか?
細かくなってしまい申し訳ありませんがよろしくお願いします。
0878nobodyさん
2006/08/28(月) 23:45:14ID:???サイズ指定できるかわからんけど、別のWebForm作ってそこに飛ばすとかじゃとだめかな?
指定はtargetでやれば別ウインドウで開けるでしょ?
0879873
2006/08/29(火) 15:13:12ID:???DataGridコントロールのイベントについて調べてみ。
適切なイベントで適切な処理を行えば、
おまいのやりたいことが出来るはずだ。
0880nobodyさん
2006/08/29(火) 19:49:46ID:???型付きDataSetを公開するようなWebメソッドを作成しているのですが、
プロキシクラスとして作成されるクライアント側のデータセットが正しく生成されなくて困っています。
具体的にはカラムのNullValueプロパティを(Empty)にしておいても、プロキシクラスの
型付きデータセットのプロパティ内にInvalidCastExceptionのtry-catchが生成されてしまうのです。
WSDL.exeに直接XSDを入れて生成してみてもダメでした。
これは自動生成ツールの限界としてあきらめた方がよいのでしょうか?
0882860
2006/08/30(水) 01:29:05ID:???>>879
ありがとうございます。
おそらくItemCommandイベントですよね?
ItemCommandのイベントを使用するやり方、というより
イベントと小さい画像(ImageButton)をクリックした際に
ページがリロードされスクロールバーが最上位に戻ってしまいます。
第一クリックされた行の判別ができない気もします。。
>>878
その方法なんだと↑と同じなんですけど
小さい画像(ImageButton)クリックした時点でページがリロードされて
しまいます…
画像をクリックしたらそのウィンドウがリロードされることなく
選択行の情報から作成したパスの画像を別ウィンドウに表示したいの
ですけど無理なんでしょうか?
0883860
2006/08/30(水) 01:42:26ID:???実際はDBとImageButtonのNavigateUrlを連結したいんですけど
これだとクライアント側で別窓で開かせる際、
ウィンドウサイズ等の制御ができないですし…
0884873
2006/08/30(水) 15:09:58ID:???イベントガチガイマス
ポストバックを発生させないで別ウィンドウを開くには
ページを開いた時点(htmlが生成された時点)で、
各行のimagebuttonのOnClickに適切なモノが設定されていなければならないということはわかるよね?
つまり、ボタンをクリックしたときにイベントが発生するItemCommandはおまいの目的には沿わないと。
じゃあ、ページを生成する前に発生するDataGridのイベントで、
行ごとのコントロールが可能なイベントといえば・・・?
ItemCommandでクリックされた行の判別をするには
SelectedItemかSelectedIndexプロパティを利用すれば良かったはづ…
時間があればDataGridのメンバの説明を一通り読んでみ。
読んだ後でテストコードが書ければ更によし。
0885nobodyさん
2006/08/30(水) 19:19:52ID:???878だけど、<a>の属性指定でtarget="_blank"で別のウインドウは開けるよ?
ただW3Cの人達は推奨しないし、サイズ指定は無理だね。
後はjavascriptぐらいしか、思い浮かばないなぁ
0886860
2006/08/31(木) 01:05:53ID:???毎日仕事から帰って熟読させてもらってます。
>>884
イベントが違いましたか汗
そこで言われた内容を元に見つけました。
ItemDataBoundですね。
↓のサンプルコードを書きました。
Private Sub DataList1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles DataList1.ItemDataBound
CType(e.Item.FindControl("Label1"), System.Web.UI.WebControls.Label).Text = e.Item.ItemIndex.ToString()
End Sub
Label1はDataGridの中の項目テンプレート中に配置しています。
これで他の列情報を元に小さい画像(ImageButton)にいろいろな設定を行う
ことができることがわかりました。
ですがだとパスを指定ができるだけで新規ウィンドウのウィンドウサイズ等を指定する
ことができず、これなら>>860のNavigateUrlに直結した時と同じ結果になる気がします。
そんなはずはないので正直自分が大きな勘違いをしていると思っています。
どこを勘違いしてますでしょうか?
やはりjavascriptを用いてウィンドウサイズを指定しつつ
新規ウィンドウの開くという動作はjavascriptをサーバー側から
クライアントに送り直すという動作からリロードがかかると思いますし
どん詰まりに陥ってしまいました…
行の判別についてはその通りであり反論は全くございません。
指摘されて気づきました。
再三のアドバイスにも関わらず未だ答えにたどり着けず申し訳ありません。
0887860
2006/08/31(木) 01:08:54ID:???ウィンドウサイズを指定するにはjavascriptを使用する必要があり、
javascriptを行をクリックしてから作成しないといけない場合
サーバー側からクライアントに送信するという動作をサーバー側で
実行するためリロードが行われてしまう。
これが原因で悩んでいます。。
0888873
2006/08/31(木) 05:46:01ID:???ポストバックが発生してしまうのは、Button、LinkButton、ImageButton、
このへんのASP.NETのコントロールはSubmitボタンとして生成されてしまうからだーね。
じゃあ、"ポストバックが発生しない"コントロールにOnClick属性を付けてあげやう。
Imageコントロールとか。
例1) Image1.Attributes.Add("OnClick", "ココにJavaScript")
htmlのボタン(Submitボタンはダメ)をサーバーコントロールとして実行→OnClick属性を行ごとに設定という手もある。
例2)
aspx側: <input id="Button2" runat="server" type="image" value="button" src="画像固定ならココで画像アドレス指定"/>
コードビハインド:
Button2.Attributes.Add("OnClick", "(ここでウィンドウのポップアップ)")
Button2.Attributes.Add("src", "(行ごとに画像変えるなら、こっちで画像アドレス指定)")
この2つの違いは、htmlで出力されたときにimgタグになってるかinputタグになってるかの違いだね。
後一息だからがんばれー。
0889nobodyさん
2006/08/31(木) 17:39:15ID:???アホみたいになんでページのほとんどの情報をhiddenフィールドに格納してPOSTするんだろ。
ネットワークの帯域を無駄に浪費するような環境での開発に慣れてしまったPGはつぶしがきかな
いだろうな。
自分自身が「パフォーマンスのボトルネックになる場合がある」っていう機能を実装するMSって
迷惑なことばかりしてくれるよな。
0890nobodyさん
2006/08/31(木) 18:01:21ID:xWZ7n96Bクラスライブラリへの参照を追加する方法ってないですか??
0891nobodyさん
2006/08/31(木) 18:57:49ID:???セッションでViewStateを管理するという方法もあるわけだが。
コントロールごとにViewStateの使用、不使用も設定できるしね。
パフォーマンスを気にするときにはそれなりの対応はあるよ。
そのへん何も考えてない子が多いのは確かだけどorz
この前、某国から上がってきたプログラムなんてViewStateがMB単位でな…アハハハ
0893860
2006/09/01(金) 01:33:45ID:???なるほど、そういうことだったんですか。
例1にて試しまして無事動作しました!!!
数日かかっただけに感動しました笑
本当にありがとうございます。
例2も試したのですがページが動作自体は問題ありませんがページがリロードされてしまいました。
これでは要件が満たせれませんよね??
疑問が残るので自分が理解できているのか気になるのでお聞きするに至りました。
また、例1ではImageコントロールを採用したのですが、
submitボタンとして作成されないコントロール(だからと思う)なので
画像の上にマウスカーソルが重なった際、指の絵のカーソルに
変わらなくなってしまいましたがこれは対処法ないでしょうか?
当初の問題に比べると小さな問題ですが汗
こういう所も踏まえてきちんと動作しているサイトがあるので
すごく気になります。。
0894873
2006/09/01(金) 09:21:26ID:???ゴメンね大嘘書いてゴメンね。自分でもサンプルコード書かなきゃダメね。
ASP.NETのボタン
Button :INPUT type="submit" として出力されるのでポストバック発生
LinkButton :アンカータグ押したときにポストバック発生するようになってる。
ImageButton:INPUT type="image" として出力されるのでポストバック発生
HTMLボタン
button :ポストバック発生無し (←自分で前に書いたときはコレを使ってたので勘違い)
image :ポストバック発生
submit :ポストバック発生
INPUT TYPEがimageかsubmitだとポストバックが発生と。
んで、ポストバック発生させないにはJavaScriptがfalseを帰すような書き方すれば良いと。
例) .Attributes.Add("OnClick", "window.open('http://www.google.co.jp'); return false;")
Λ||Λ
( / ⌒ヽ とりあえず恥ずいので吊ってくる
∪ ノ
∩∪∩
(・∀・| |
| |
⊂⊂____ノ
0895860
2006/09/04(月) 01:43:22ID:???>897
今はおかげさまで無事動作しています。
結果的にはImageButtonコントロールを使用して
例を書いて頂いた通り
Attributes.Add("OnClick", "window.open('http://www.google.co.jp'); return false;")
としました。
付き合って頂いてありがとうございます。
Web系は初めてだったので取っつきにくかったですが
何となく理解できてきました。
何となく理解、ですが笑
0896nobodyさん
2006/09/05(火) 21:41:43ID:???DataGridで編集ボタンなしでEXCELのようにセル(テーブル)を選択したら、
入力モードになるとかいう機能はなさそうなので・・・
わざわざボタンを押すのってわずらわしいので実現したいのですが
自分でjavascriptでコツコツ作るしかないですか?
0897nobodyさん
2006/09/05(火) 21:43:55ID:???aspxで定義した変数、オブジェクトをascxから参照することは可能でしょうか。
一aspxページに複数のascxを貼り付けたいのですが、変数は全てのascxで共有したいと思います。
0899nobodyさん
2006/09/06(水) 00:33:46ID:???頑張って自作してください。
もし業務で必要なら、サードパーティのコンポーネント(例えばGrapeCityのSPREAD .Net)を
利用する方が良いかもしれないね。予算&時間と相談するよろし。
0900nobodyさん
2006/09/06(水) 18:44:18ID:???0901900
2006/09/06(水) 18:46:57ID:???アップロードされたテキストファイルがShiftJISでエンコードされた物かどうかを判別したいのです。
レス数が900を超えています。1000を超えると表示できなくなるよ。