2011-12-14 33 views
0

私はasp.netアプリケーションで作業しています。私はaspx page.UserでgridviewにSQLからデータを読み込むことができますが、編集してgridviewの値を保存する能力があります。 私のグリッドビューには、テキストボックスを持つ2つの列があるitemtemplatesがあります。ユーザーがグリッドビューで編集する異なる色のすべてのセルを強調表示します。私は以下のコードを使用してJavaスクリプトを使用してGridViewコントロールで別のaspxページにテキストボックスのために同じことを行うことができる午前asp.netのgridview内のテキストボックスの背景色を変更しますか?

:私は、内のテキストボックスに同じコードを実装しよう

<script type="text/javascript"> 


     $(document).ready(function() { 

      $(':input').change(function() { 

       $(this).addClass("textchanged"); 

      }); 

     }); 

    </script> 



<asp:GridView runat="server" ID="gvnames" AutoGenerateColumns="False" CellPadding="4" 
      Font-Names="Georgia" ForeColor="Black" GridLines="Vertical" BackColor="White" 
      BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" DataKeyNames="Name" 
      DataSourceID="SqlDataSource1" 
      > 
      <RowStyle BackColor="#F7F7DE" /> 
<colums> 
    <asp:TemplateField HeaderText="Name"> 
         <ItemTemplate> 
          <asp:Label ID="lblName" Visible='<%# !(bool) IsInEditMode %>' runat="server" 
           Text='<%# Eval("Name") %>' /> 
          <asp:TextBox ID="txtName" Width="250px" Visible='<%# IsInEditMode %>' runat="server" Text='<%# Eval("Name") %>' /> 
         </ItemTemplate> 
        </asp:TemplateField> 
</colums> 
    <FooterStyle BackColor="#CCCC99" /> 
      <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" /> 
      <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" /> 
      <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" /> 
      <AlternatingRowStyle BackColor="White" /> 
     </asp:GridView> 

グリッド表示は機能しません。 正しいアプローチですか、それとも達成するための方法がありますか? もし私が正しい道で私を導くことができれば、私は感謝します。

+0

あなたのコードが動作正常に動作している場合

<Columns></Columns> 

これは、役立つはずです。あなたは他のどこかで問題を探すべきです。 jQueryはページ上で正しく機能しますか? – AGuyCalledGerald

+0

ええ、私はまだ問題がどこにあるのか把握しています...私はどこに私がscript.Iを配置したコンテンツplace holderを持っています。私はパネル内のgridviewを含んでいました。パネルはそれと何か関係がありますか? – Macnique

+0

いいえ、パネルは問題ありません...マークアップを見るのがいいです...しかしjQueryはページ上で正しく動作しますか? – AGuyCalledGerald

答えて

2

私はあなたが削除する必要があると思う:それはあなたのjqueryの入力の前にあると思います。これが唯一のテキストボックスに起こることになっているまたならば、あなたはjQueryのセレクタで、より具体的に、これまでそれを変更する必要があります:あなたのマークアップで

$('input[type=text]') 
+0

は、私の質問で言及したのと同じコードを使用しているようです。この方法も試してみてください。 – Macnique

0

、へ

<colums><colums> 

- タグを変更してくださいjQueryの

関連する問題