###前提・実現したいこと
ASP.NETにおいて、ある条件下において、または条件を達成していないときに、ボタンをクリックしたらポップアップを表示して警告を出すことができる機能を実装したいと考えています。しかし、C#における「MessageBox.Show」の文は使えないため、具体例として書いた以下のようなコードの場合、どのようにコードを追加すればよいかを教えていただきたいのです。
###試したこと
最初はこのサイトを参考にして、「Attributes」文を使用しようと考えたのですが、これはPage_Loadメソッド内でしか書くことができないようで、Button内に条件式を書きたいのにその方法が思い付くことができないため、どうにかならないものかと思い尋ねることにしました。お手数ですが、よろしくお願いします。
###該当のソースコード
public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //最初に試した書き方 //この箇所に条件式を書いてもうまくいかなかった Button1.Attributes["onclick"] = "return confirm('警告文:すでにファイルが存在しています。上書きしてもよろしいですか?');"; } protected void Button1_Click1(object sender, EventArgs e) { string fileName = @"特定のディレクトリ"; //ボタンをクリックしたときに、特定のディレクトリの中にすでにファイルが存在している場合にのみ、ポップアップを表示させて警告させたい if(System.IO.Directory.Exists(fileName)) { //ポップアップ表示「すでにファイルが存在しています。上書きしてもよろしいですか?」 //ポップアップで「はい」が選択された場合、すでに存在しているファイルを削除して新たに作り直す System.IO.File.Delete(~); (fileName内にファイル作成) }else { //特定のディレクトリの中にファイルがない場合、ポップアップを表示しないままファイルを新たに作る (fileName内にファイル作成) } }
###追記
自分が実現させたいと考えている全体的なシナリオを書いておきます。まず、ディレクトリAがあり、その中にディレクトリ①、ディレクトリ②...と複数のディレクトリが存在しています(これらのディレクトリが上記のコードにおける「特定のディレクトリ」のことです)ページ内に表があり、それには列の一番左にディレクトリの名前を示し、1行目=ディレクトリ①、2行目=ディレクトリ②...という風になっています。また、その名前の隣に、それぞれのディレクトリの中身のファイルの名前を表示しています。ディレクトリ①、②~と、ディレクトリの中に作成するファイルを選択してから、Button1を押すと、ファイルを作成され、その際に選択したディレクトリの中にすでにファイルが存在していた場合に、ポップアップで警告を出せるような仕組みを作りたかったのです。わかりづらい説明で申し訳ありません。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/12/16 15:23
2016/12/17 11:55 編集