0

DDL から保存する場合を除いて、Web ページからすべての値を保存できます。ただし、選択した値ではなく、最初の値またはデフォルト値のみが保存されます。選択した値を保存するにはどうすればよいですか?

州の DDL のコードは次のとおりです。

<div>
    <label for="State" class="txtLbl">State</label>
    <asp:DropDownList ID="State" ClientIDMode="Static" runat="server"/>
</div>

これが私がそれを保存する方法です

var State = taxonomyManager.GetTaxa<FlatTaxon>().Where(t => t.Taxonomy.Name == "states").FirstOrDefault();
        if (State != null)
        {
            jobPostItem.Organizer.AddTaxa("states", State.Id);
        }

DDLを状態にバインドする方法は次のとおりです

private IEnumerable<ITaxon> GetTaxonomy<TTaxonomy>(string TaxonomyName) where TTaxonomy : class, ITaxonomy
    {
        // bind categories selector
        var taxMgr = TaxonomyManager.GetManager();
        var taxonomy = taxMgr.GetTaxonomies<TTaxonomy>().Where(t => t.Title == TaxonomyName).FirstOrDefault();
        if (taxonomy == null) return null;

        // return taxa items
        var taxa = taxonomy.Taxa;
        return taxa;
    }
4

1 に答える 1

0

初めてページをロードするときは、ドロップダウンリストの値のみをロードする必要があります。そのため、IsPostBack プロパティが false であることを確認してください。

次に、Sitefinity バックエンド内のページ プロパティ内からページの ViewState プロパティを有効にする必要があります。

これでうまくいくはずです。

ダニエル

于 2013-10-02T09:48:48.007 に答える