aspxのページにjQueryのloadメソッドを使ってテキストボックスに値を反映させることは不可能でしょうか?

このQ&Aのポイント
  • aspxのページでjQueryのloadメソッドを使ってテキストボックスに値を反映させることは可能なのかについて調査しています。
  • 具体的には、サーバ上に存在するテキストファイルのタグを解析し、テキストボックスに反映させたいのですが、うまく動作しません。
  • この方法が不可能なのかどうか、解決策を知りたいです。
回答を見る
  • ベストアンサー

aspxのページにjQueryのloadメソッドを使ってテキストボック

aspxのページにjQueryのloadメソッドを使ってテキストボックスに値を反映させることは不可能でしょうか? テキストボックスはこんな感じです。 <asp:TextBox ID="TextBox3" runat="server" Height="72px" TextMode="MultiLine" Width="651px"></asp:TextBox> サーバ上に存在しているテキストファイルのタグを解析してテキストボックスに反映させたいのですが・・・動いてくれません。 $(document).ready(function (){ $("#TextBox3").load("load.txt .div1"); }); そもそも不可能なことをしているのでしょうか?

  • mr-r00
  • お礼率93% (480/516)
  • AJAX
  • 回答数2
  • ありがとう数22

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

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

aspについて、詳しくは知りませんが、サーバーサイトで動作する ページを生成する仕組みですよね(jsp、php、cg...と考え方は同じはず) jQueryのloadメソッドはブラウザー側で動くAJAXですよね。 この変の勘違いによる混乱をたくさん見かけます。  2つのプログラムがサーバー側とブラウザー側で会話し合うなんてのは スクリプトだけでは不可能ですよ。ブラウザー側にプログラムが必須です。

mr-r00
質問者

お礼

完全に勘違いですよね・・・ポカミスの質問に丁寧に答えていただきありがとうございました

その他の回答 (1)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

補足: セッションとかクッキー使えば、scriptでも会話可能ですが...

mr-r00
質問者

お礼

ありがとうございます

関連するQ&A

  • ASP.NET WEBアプリケーションで作成されたページより他の既存ペ

    ASP.NET WEBアプリケーションで作成されたページより他の既存ページへデータを投げたいと考えているのですがセキュリティ上難しいのでは?と考えています。しかし、なんとか代替案がないかと思っておりどなたかヒントをいただけないでしょうか? <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> <asp:TextBox ID="TextBox3" runat="server" Height="72px" TextMode="MultiLine" Width="651px"></asp:TextBox> <br /> <asp:Button ID="Button1" runat="server" Text="Button" />&nbsp;&nbsp; <asp:Button ID="Button2" runat="server" Text="Button" /> <br /> <br /> <asp:Label ID="Label1" runat="server"></asp:Label> 例えばこんな簡単なaspxのページで構成されているとします。 テキストボックスに入れた値を既存のWEBページ(Yahooへのログインだとか)へ入れ込みたいのですが・・・クライアントにスクリプトで作ってとかなら余裕で出来ると思うのですがサーバサイドで仕込むことは難しいでしょうか?回避策とかもあるとなおうれしいのですが・・・よろしくお願いします。

  • jQueryのloadメソッドは外部XMLは読み込めないのでしょうか?

    jQueryのloadメソッドは外部XMLは読み込めないのでしょうか? タグが<aaa></aaa>となっているところの文字を抽出したいのですが外部にあるXMLは読み込めないものでしょうか? $("#my1").load( "http://server.com/hoge.xml .aaa" ); テキストファイルでタグを書くと読み込みが出来るのですが、なぜかXMLにするとうんともすんとも動きません

    • ベストアンサー
    • AJAX
  • load()メソッドは、何故サーバ上でしか使えない

    jQueryのload()メソッドは、 何故、サーバ上でしか使えないのでしょうか? もし、ローカル環境で使おうとした場合に 不都合なことでもあるのでしょうか?

  • マスターページからコンテンツページのメソッドを実行したい

    お世話になります。 マスターページからコンテンツページのメソッドを実行したいです。 よろしくおねがいします。 ********************************** マスタページ:Site1 ********************************** [Site1.Master] <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="Site1" %> <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> [Site1.Master.cs] public partial class Site1 : System.Web.UI.MasterPage { ここで、コンテンツページのメソッドを実行 } ********************************** コンテンツページ:WebForm1 ********************************** [WebForm1.aspx] <%@ Page Language="C#" MasterPageFile="Site1.Master" Codebehind="WebForm1.aspx.cs" Inherits="WebForm1" %> <asp:Content ID="Content1" runat="server" ContentPlaceHolderID="ContentPlaceHolder1"> </asp:Content> [WebForm1.aspx.cs] public partial class WebForm1 : System.Web.UI.Page {  protected void Page_Load(object sender, EventArgs e)  {  }  //このメソッドをマスターページで実行したい  public string メソッド()  {   return "XXXXXXX";  } }

  • jQueryでloadメソッドを使用しているのですがコードの効率化につ

    jQueryでloadメソッドを使用しているのですがコードの効率化についてヒントをください。 こんなコードです。 $("#load1").load("A.html .flag1", function(Text, status) {   if ($("#load1").text() == "A") $("#load1").css({backgroundColor:"red"});  else if ($("#load1").text() == "B") $("#load1").css({backgroundColor:"yellow"}); else if ($("#load1").text() == "C") $("#load1").css({backgroundColor:"blue"}); }); $("#load2").load("B.html .flag1", function(Text, status) {   if ($("#load1").text() == "A") $("#load1").css({backgroundColor:"red"});  else if ($("#load1").text() == "B") $("#load1").css({backgroundColor:"yellow"}); else if ($("#load1").text() == "C") $("#load1").css({backgroundColor:"blue"}); }); $("#load3").load("C.html .flag1", function(Text, status) {   if ($("#load1").text() == "A") $("#load1").css({backgroundColor:"red"});  else if ($("#load1").text() == "B") $("#load1").css({backgroundColor:"yellow"}); else if ($("#load1").text() == "C") $("#load1").css({backgroundColor:"blue"}); }); ・ ・ ・ 指定している要素とloadするURL以外はコードが全く一緒なんですよね これをどうにか効率化出来ないでしょうか?

  • データグリッド内に配置したテキストボックスの幅調整

    初めまして。 vb.net初心者(開発経験2週間)です。 データグリッド内のテキストボックスにDBから取得してきた値を テキストボックスに表示させるところまではできたのですが そのテキストボックスを取得してきた値に合わせて 幅を調整したいのですが直接widthを指定しても幅が 変わってくれません。 どなたかご教授いただけませんでしょうか? よろしくお願いいたします。 現在以下のようにソースコードを考えています。 <asp:datagrid id="MyDataGrid" style="Z-INDEX: 105; LEFT: 0px; POSITION: absolute; TOP: 88px" runat="server" BackColor="#FFE0C0" Height="30px" Width="300px" ForeColor="Black" BorderColor="Black" BorderStyle="Solid" AutoGenerateColumns="False" HorizontalAlign="Center"> <Columns> <asp:TemplateColumn HeaderText="DBカラム名"> <HeaderStyle Wrap="False" HorizontalAlign="Center" VerticalAlign="Middle"> </HeaderStyle> <ItemTemplate> <asp:TextBox Runat="server" ID="txt1" Text='<%# DBから値を取得 %>'> </asp:TextBox> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:datagrid>

  • サーバ側でオートコンプリート機能をOFFにするには

    ASP.NET2010でログイン画面を作成しています。 以下の通り、htmlを記述してもログイン欄(TXT_User)とパスワード欄(TXT_Pass)の オートコンプリート機能を無効にすることができません。 <asp:textbox style="IME-MODE: disabled" id="TXT_User" runat="server" AutoCompleteType="Disabled"</asp:textbox> <asp:textbox id="TXT_Pass" runat="server" AutoCompleteType="Disabled" TextMode="Password"></asp:textbox> ちなみにIE11で動作させようとしています。 サーバ側でブラウザのオートコンプリート機能をOFFする方法を教えて頂けないでしょうか? 宜しくお願いします。

  • 【ASP.NET】 ログインコントロールにおいて

    おせわになります。 Visualstudio 2005 のASP.NET VB でWEBサイトを作成しております。 ASP.NET  で ログインコントロールを使って、認証ページを作っているのですが。 ID PASSWORD この2つのIDをログインコントロール内で、使用しているのは分かるのですが、 このIDに加え ID 名前 PASSWORD という3つのデータによって、ログイン制御を行いたいと考えております。 ログインコントロール内で、テーブルを追加して、「名前」を増やした所、 このIDをVB.NET側で、受け取れません。 ASP.NET 側の ログインコントロールのソースは /////// ここからが問題の箇所 ///////////// <tr> <td align="right" style="height: 24px; width: 149px;"> <asp:Label ID="Label2" runat="server" AssociatedControlID="USERID">ID: </asp:Label></td> <td style="height: 24px; width: 312px;"> <asp:TextBox ID="USERID" runat="server" MaxLength="5" OnTextChanged="USERID_TextChanged" Width="152px"> </asp:TextBox> <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="USERID" ErrorMessage="ユーザーIDは5文字以下にしてください。" ToolTip="ユーザーIDは10文字以下にしてください" Type="String" ValidationGroup="Login1">*</asp:RangeValidator> </td> </tr> /////// ここまでが問題の箇所 //////////// /////// ここからは通常に起動 ///////////// <tr> <td align="right" style="height: 24px; width: 149px;">  <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">氏名(カナ):</asp:Label></td> <td style="height: 24px; width: 312px;"> <asp:TextBox ID="UserName" runat="server" Width="152px" OnTextChanged="UserName_TextChanged" MaxLength="10"> </asp:TextBox> <asp:RangeValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName" ErrorMessage="ユーザー名は10文字以下にしてください。" Type ="String" ToolTip="ユーザー名は10文字以下にしてください" ValidationGroup="Login1"> *</asp:RangeValidator> </td> </tr> <tr> <td align="right" style="height: 29px; width: 149px;"> <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password">パスワード: </asp:Label> </td> <td style="width: 312px; height: 29px;"> <asp:TextBox ID="Password" runat="server" TextMode="Password" Width="152px"> </asp:TextBox> <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password" ErrorMessage="パスワードが必要です。" ToolTip="パスワードが必要です。" ValidationGroup="Login1"> * </asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" runat="server" EnableViewState="False"></asp:Literal> </td> </tr> VB.NET 側では以下のスクリプトで指定しています。 Protected Sub LoginButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Login1.LoggedIn ////////// 受け取れない ////////////////// Dim strID As String = Login1.UserID.ToString ////////// 受け取れる ////////////////// Dim strID As String = Login1.UserName.ToString ////////// 受け取れる ////////////////// Dim strID As String = Login1.Password.ToString このように、LOGIN コントロールに UserIDを追加できません。 よって、session などに、 UserID のVALUE を受け取れるようにしたいのですが、 asp.net側の 設定はどのようにしたらよろしいのでしょうか。 ログインコントロールは あきらめて、通常の独自の認証システムを作るべきですかね。 ログインコントロールに 通常のテキストボックスとして、追加はできないものでしょうか。 どなたかご存知の方、いらっしゃいましたら、教えていただけますと幸いです。 どうぞ宜しくお願いいたします。

  • <ASP>にTextBoxの値を設定する方法

    TextBoxに記述されたDB接続文字列を<ASP>内で設定しようと試みておりますが、失敗します。どのように記述を改めればよろしいでしょうか? ----------------- <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebForm1" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { TextBox1.Text = Application["DB_CON_STRING"].ToString(); } </script> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>無題のページ</title> </head> <body> <form id="form1" runat="server"> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <div> </div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"> <Columns> <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="ID" /> <asp:BoundField DataField="DATETIME" HeaderText="DATETIME" SortExpression="DATETIME" /> <asp:BoundField DataField="MESSAGE" HeaderText="MESSAGE" SortExpression="MESSAGE" /> </Columns> </asp:GridView> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="form1.TextBox1.Text"★ここがうまくいかない★ SelectCommand="SELECT * FROM TEST ORDER BY ID DESC"></asp:SqlDataSource> </form> </body> </html>

  • jqueryを使用して、外部のhtmlファイルから各ページ共通のサイド

    jqueryを使用して、外部のhtmlファイルから各ページ共通のサイドメニューを読み込んでいます。 fairefox、及びIEの8から6までは動作を確認しているのですが、IEの5.5だけは読み込み時に、『オブジェクトでサポートされていないプロパティまたはメソッドです。』というスクリプトのエラーがおきてしまいます。 エラー部分はおそらく.load部分だと思います。 IE5.5でもjqueryはクロスブラウザで対応しているはずですし、他のブラウザで確認がとれているのになぜ、5.5だけエラーがでてしまうのでしょうか? ちなみにhead部分でjqueryと作成した外部ファイルを読み込んでいます。 作成したjsのソースです ----------------------------------------------- var urlflag = location.href+""; if ( urlflag.indexOf( "aaa ) == -1 || urlflag.indexOf( "bbb" ) == 23 ){   $(document).ready(function(){ $("#left_box").load("test_a.jp #lbox_inner"); $("#top_right_box").load("test_a #rbox_inner"); }); } else{ $(document).ready(function(){ $("#left_box").load("test_b.jp #lbox_inner"); $("#top_right_box").load("test_b #rbox_inner"); }); } ----------------------------------------------- ソース部分に誤りがあるか、もしくは呼び出すタイミングなどの問題でしょうか? かなり調べて見ましたがこれ以上は思い当たる節が見つかりません。 何か回避策などあるようでしたら、どなたか是非教えていただけないでしょうか?