2011-07-21 23 views
2

私は管理者としてログインしている場合、現在のページのテキストを編集することができます(私はいつもウェブサイトを更新する必要はありません)小さな変更のために、私はちょうどオンライン中に自分自身を編集することができます)。すべてのページデータは、SQLデータベーステーブルに格納されます。各エントリは単に "ID"と "PAGECONTENT"です。今、私はデータを取得し、私のページ上のFormViewに入れるためにSQLDataSourceを使いました。これはすべて動作します。サイト管理者としてログインしている場合にのみ表示されるボタンを作成しました。ボタンをクリックすると、ページの内容を表示しているテキストラベルがTextAreaに変わり、「完了」ボタンをクリックしてデータベーステーブルに更新させることができます。私は更新部分を行うことができます、私はちょうど私が編集可能な方法でテキストを表示するはずですかわからない...データベースエントリの編集

答えて

1

リッチテキストエディタコントロールと呼ばれるものが必要です。これはツールバーなどでMicrosoft Wordスタイルのインターフェイスを提供し、データベースに格納されているhtmlを解析します。

無料のものがたくさんあります。一般的に使用されているのはAjax Control Toolkitに含まれているものです。

最新のAjaxコントロールツールキットをプロジェクトにインストールするには、nugetを使用する必要があります。

このコントロールを使用する方法について説明しそこのチュートリアルがたくさんあります:

1

POSTシナリオ:あなたがいる場合にのみ表示され、ボタンを持っているだけのようにサイト管理者としてログに記録されたテキストエリアは、編集ボタンをクリックすると表示され、完了ボタンをクリックすると保存されます。

ajaxインターフェイスを使用している場合を除き、dbエントリのエディション用の専用ページを用意することをお勧めします。ディテールビューから編集ビューに変更するときはPOSTに、保存するときはPOSTに戻すのは複雑で安全ではありません。それは単なるアイデアです。

GET-then-POSTのシナリオ:dbエントリ専用の編集ページがあります。たとえば、/editpage.aspx?id=1としましょう。そのページにポストバックして作業を保存する完了ボタンを表示します。

幸運。

0

http://www.w3schools.com/aspnet/control_htmltextarea.asp

多分これはあなたが探しているものです。

<script runat="server"> 
Sub submit(sender As Object, e As EventArgs) 
    p1.InnerHtml = "<b>You wrote:</b> " & textarea1.Value 
End Sub 
</script> 

<html> 
<body> 

<form runat="server"> 
Enter some text:<br /> 
<textarea id="textarea1" cols="35" rows="6" runat="server" value="PUT_YOUR_TEXT_HERE_to_prepopulate_the_Data" /> 
<input type="submit" value="Submit" OnServerClick="submit" runat="server" /> 
<p id="p1" runat="server" /> 
</form> 

</body> 
</html>