asp.netでxmlからwebパーツを表示させる方法

このQ&Aのポイント
  • asp.netでxmlファイルから情報を読み込み、webパーツの表示・非表示を制御したいです。
  • xmlファイルの設定値に基づいて、名前の入力項目を表示したり非表示にしたりする処理を実装したいです。
  • C#を使用して、disp属性の値に応じてhtml上のwebパーツを動的に切り替えたいです。
回答を見る
  • ベストアンサー

asp.netでxml→webパーツを表示させる方

現在、asp.netの勉強をしています。 xmlから項目を読み込んで、その情報を元にWebページのテキスト等の入力項目、 つまりwebパーツを表示、非表示をさせる処理ができないかとやっていますが、 実装方法がわからず困ってます。 【xmlファイル】 <?xml version="1.0" encoding="utf-8" ?> <messages> <message id="1" disp="0">名前(姓)</message> </messages> <messages> <message id="2" disp="1">名前(名)</message> </messages> 上記のようなxmlファイルを例にご説明致しますと、XmlDocumentで読み込み、 disp="0"の場合は名前(姓)のラベルと入力できるテキストボックスの2つが表示されず、 disp="1"の場合は名前(名)のラベルと入力できるテキストボックスの2つ表示されるという 処理を実装したいと考えています。 簡単に言うと、xmlの設定値からhtmlで設定したwebパーツのon、offを行う処理が したいということです。 ※html側にもid等を設定する必要があるのでしょうか? 上記のような処理方法がありましたら、教えて頂けますでしょうか。 参考になるサンプルプログラムまたはサンプルページがありましたら 教えて頂けば幸いです。 ちなみに言語はC#で行っております。 以上、宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • shockatz
  • ベストアンサー率80% (153/191)
回答No.1

うーん、「XML読込」のような具体的方法論と、その他の漠然とした内容がミスマッチしていて、答えづらいです。 ■Webパーツ? ・ASP.NETの「WebPartsControl」=ユーザポータル画面なんかで自由にDragDropできるカスタマイズ可能ペイン? それとも、単なるhtml表示ブロック? http://www.atmarkit.co.jp/fdotnet/dotnettips/489asppersonalize1/asppersonalize1.html ■どの部分がわからないのか不明 ・"disp"パラメータを外部から渡す仕様? ・XMLを読み込む方法、そのタイミング? ・XMLから展開される内部オブジェクトの概念? ・動的にhtmlを切り替えるためのWebControlの使い方? ■なぜにXMLで? ご指示程度の内容に、わざわざ外置きのデータを用意しても、スキーム・パフォーマンスともメリットはないと思うのですが。 ・web.configのsetting記述では? ・コード内記述では駄目?

tentekomai_30
質問者

お礼

ご回答ありがとうございます。 参考のURLまで教えて頂きまして重ねてお礼を申し上げます。 当方のご質問はjavascriptからのxmlの各要素を読み込んだ後、 htmlの処理を行う流れで解決しました。 ご迷惑おかけしました。 ありがとうございました。

関連するQ&A

  • IEが表示できないXML

    以下のようなXML <?xml version="1.0" encoding="Shift_JIS"?> <aaa> <■漢字/> </aaa> IEで表示しようとするとエラーになります。 encoding が間違っているのでしょうか。 よろしくお願いします。 ----- XML ページを表示できません XSL スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。 -------------------------------------------------------------------------------- 無効な文字で名前が始まりました。リソース 'file:///sample.xml' の実行エラーです。ライン 3、位置 3 <■漢字/> --^

    • ベストアンサー
    • XML
  • VB2005でASP.NETを使用してwebサイトを作成しております。

    VB2005でASP.NETを使用してwebサイトを作成しております。 ボタンをクリックした際、ラベルに「処理中」などを表示させて DB更新などの処理を行い、終了後に「終了」などをラベルに表示したく 設定を行っているのですが画面に反映されません。 ボタンクリックイベントの終了のタイミングでラベルの内容が表示されます。 webなのでサーバー側で処理し結果をHTML?でクライアントに返してブラウザ表示している仕様上、 処理途中のラベルの値をクライアント側に反映することはできないのでしょうか??

  • ASP.NET Web上のテキストファイルを自動読み込みする方法について

    ASP.NET WinXP VisualWebDeveloper2005ExpressEdition Web入力及び更新画面を作成しています。 ユーザに対して時間に関係なく 管理者がWebページを 更新しないでリアルタイムに メッセージを送信したい。 考え中の案 ・管理者が必要に応じて  メッセージのテキストをWebサーバにアップロード  する。 ・webページ上(ASP.NET)でテキストファイルを  参照してページに表示する 上記のようなファイルアクセス方法は セキュリティ上危険でしょうか? また、そももASP.NETでのテキストファイル 参照方法がわかりません。 教えてください。 サンプルがありましたらよろしくお願い致します。

  • xmlをjavascriptで読み込み、HTMLに表示させようとしてい

    xmlをjavascriptで読み込み、HTMLに表示させようとしています。 IEでは出来たのですが、それ以外でのブラウザでどうしても読み込むことが出来ません。 簡単なxmlを作ります。例えばこの『これを表示』というテキストをfirefoxで表示させたい場合はどのように書けば良いのでしょうか? <?xml version="1.0" encoding="UTF-8"?> <items> <item>これを表示</item> </items> 今はこのようなjsを作っています。 アラートのAAAでxmlのテキストを表示させるようにしたいのですが・・・ ノードへのアクセス方法?が間違っているのはわかっているんです。ただ、検索して調べても色々出てきて、色々試しても上手くいかず・・・どうしても分がわかりません。 すみません、どなたかご指摘お願い致します!! xmlData = new XMLHttpRequest(); // XMLドキュメントをDOMで扱うためのオブジェクトを作る xmlData.overrideMimeType("sample.xml"); // XMLドキュメントを読み込む var AAA = xmlItemData.documentElement.childNodes[1].childNodes[1].text; alert(AAA); 宜しくお願い致します。

  • C#+ASP.NETでwebサイト

    C#+ASP.NETでwebサイト 以下のようなwebサイトを作っています。 (1)webブラウザでサイトに接続 (2)文字列をテキストボックスに入力 (3)その文字列をキーにして、データベースのあるテーブルを検索し、  ヒットした全件をブラウザに表示。  (列の数は合計で6列あります。行は1000行程度の見込みです。) (4)操作対象の行を選択し、その行の2列目のみをテキストファイルに出力、その行をDBから削除。 時間がなく、また知識、経験不足のため困っています。 サンプルソースや、ヒントだけでも良いので教えて下さい。

  • WebサービスからのxmlがIEで表示されない

    ウェッブサービスのxmlデータをjQuery Ajaxを使ってページ上に表示したいのですが、下記のコードでは、IEのみ表示できず悩んでいます。 jQuery(document).ready(function($){         getAjaxData(); }); function getAjaxData(){         $('#text-box').append('getAjaxData'+'<br>');         jQuery.ajax({               url: ウェッブサービスから提供されたxmlのURL,               type:'GET',               error:errorMsg,               success:outputSuccess         }); } function outputSuccess(data){         $('#text-box').append('success!'+'<br>');         var txt = jQuery(data).find("root").text();         $('#text-box').append(txt); } function errorMsg(){         $('#text-box').append('error!'+'<br>'); } Firefox,Chrome,Safari,Operaでは、上述コードのように、テキストボックスに最初getAjaxDataが表示され、次にsuccess!、さらにxmlの内容が表示されます。しかしIEのみ(IE9)getAjaxDataの次にerror!のテキストが表示され、xmlデータを読み込むことができません。 ネットでいろいろと調べましたが解決方法がみつかりません。 当方50歳を越えて独学でjQueryなど勉強していますが、まだまだ浅学のためどうしたらいいのか悩んでおります。 ぜひ解決法をご存知の方、ご教授いただければ幸いに存じます。 どこかいい解決法が書いてあるページのご紹介でもかまいません。 よろしくお願い申し上げます。

  • “XML ページを表示できません”というメッセージについて

    yahoo.comのmusic launchで見たいプロモビデオをクリックしたら、“XML ページを表示できません スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください”というメッセージが出てきてしまって見れませんでした。これまでは問題なく見れていたのに、どうしてこうなったのか全くわかりません。XMLというのがそもそもよくわからないのですが、どちらかといえば用語の解説よりも、どうしたら見れるようになるかを教えて頂きたいです。 よろしくお願いします。

    • 締切済み
    • XML
  • javaサーブレットのweb.xmlについておしえてください

    サーブレット作成中です。初心者です。 まずやりたいことは a.jspを作成しa.jspではformタグのactionにSampleを指定しています。 そして/test/Best.classを実行し、 b.jspに値を表示させます。つぎにb.jspからSample2参照させ /test/Best2.classを実行させたいと思いますが、 以下のようにweb.xmlに書いているのですが うまくいきません。 何がいけないのでしょうか?他に何か設定等いるのでしょうか? また他に手段があるのでしょうか? おしえてください。 ※ちなみにSampleだけの場合はうまくいっています。 SampleとSample2というように二つ設定させると うまくいきません。 ------ web.xmlの中身の一部------- <servlet> <servlet-name>Sample</servlet-name> <servlet-class>test.Best</servlet-class> <servlet-name>Sample2</servlet-name> <servlet-class>test.Best2</servlet-class> </servlet> <servlet-mapping> <servlet-name>Sample</servlet-name> <url-pattern>/Sample</url-pattern> <servlet-name>Sample2</servlet-name> <url-pattern>/Sample2</url-pattern> </servlet-mapping> --------------------------

    • ベストアンサー
    • Java
  • SWIFTでWEBページの情報を表示

    SWIFTを使って、特定のWebページの情報を取得したいです。 htmlを取得しその後XMLのタグ内からデータを取得という形なのでしょうか? 初心者の為実装方法に悩んでおります。 実現方法をご教示ください。サンプルなどあれば幸いです。

  • MsgBoxをASP.NETで表示したいのですが・・・WEBなどで検索

    MsgBoxをASP.NETで表示したいのですが・・・WEBなどで検索した内容が理解できずに困っています。 VWD2008を使ってページを作成しています。言語はVB.NETです。 ASP.NETではメッセージボックスを使えないことを承知しています。 ただし手段によって可能ということはこのサイトで知りました。 まだ、初心者でハチャメチャなことを書いてあるかも知れませんがご教示いただけないでしょうか? http://www.atmarkit.co.jp/fdotnet/dotnettips/015confirm/confirm.html このページを参考にしてみたのですが・・・ aspx上に配置したボタンのプロパティにAttributesという項目がありません。 また、 private void Page_Load(object sender, System.EventArgs e) { // ページを初期化するユーザー コードをここに挿入します。 Button1.Attributes["onclick"] = "return confirm('本当に移動しますか?');"; はどこに書いてあげたらいいのでしょうか? よろしくお願いします。 Imports System.IO Imports System.IO.Path Imports System.Text Imports System.Web.UI.HtmlControls Imports System.Diagnostics Imports System.Xml Partial Public Class _Default Inherits System.Web.UI.Page ' ' Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click ' '

専門家に質問してみよう