0

だから私はそのようなコードを持っています:

    private void newAddFormForMembers(SPList list, SPWeb web)
    {
        list = web.Lists["MemberRecords"];
        string url = string.Format("_layouts/createform.apsx", web.ServerRelativeUrl, list.RootFolder.Url);

        var form = web.GetFile(url);
        if (form != null)
        {
            list.DefaultNewFormUrl = url;
            list.Update();
        }
    }

特定のリストに項目を追加するときに、SharePoint 2010 デザイナーを使用して、creatform フォームの既存の html を取得しました。姓名の 2 つの新しいフィールドを追加しました。リストにはメンバー名が含まれています。次の理由により、作成フォームからこのフィールドを削除しました。

リストにアイテムを追加するために送信を押すと、姓と名は「姓、名」にフォーマットする必要があります。これで、フォームを自分自身に送信することができました -どうすればいいですか? - 次に、文字列操作を行います フィールドから値を取得するにはどうすればよいですか? - そして、その情報をリストにプッシュしますどうすればいいですか? しかし、私は新たな問題を抱えています

編集は、追加、姓名フィールドとまったく同じように見えます。リストから情報を取得して、新しい編集フォーム、特に名字フィールドにデータを入力するにはどうすればよいですか? 「姓、名」の?

これはすべてプログラムで行われています

4

1 に答える 1

-1

リストのhtml newFormを変更する代わりに、イベントレシーバーを作成してみてください

newForm からフィールドを削除する代わりに、列を非表示にしてみてください (プログラムで行うか、Sharepoint Managerなどの外部ツールを使用して行うことができます

新しい/編集フォームにフィールドを追加し、ポストバックイベントで値を取得するのは簡単ではないと思います/可能ではありません (ポストバック前にアイテムの値を操作できる onPreSave にアクセスできる JavaScript を使用します。ここでは、値をフィールドに保存するための jscript を記述できますが、編集は値を分割するのが難しいです)。リストに FirstName と LastName の 2 つの列を作成し、さらに 3 番目のフィールド FullName (新規/編集フォームでは非表示) を作成し、Added/Updated の EH を使用して、FullName = LastName + ", " + FirstName と書くか、EH なしで書くことができます。計算フィールドを作成できます。

于 2013-06-13T14:03:36.353 に答える