0

私は MVC エンティティ フレームワークを初めて使用します。私のモデルはエンティティ フレームワーク モデルであり、Country テーブルと関係がある Province テーブルと関係がある commerce テーブルがあります。

そのため、商取引を作成しようとしているときに、最初に国を選択し、次にその国に属する州を選択できるはずです。

これまでのところ、国とすべての州を表示することができましたが、国が選択された後に州を変更する方法についてはわかりません...

カミソリを使用してこのようなことを行う方法(私は.netを使用しています)とモデルの作成(最初にコードを作成するか、そのようなもの)の説明がある投稿を見てきました。

これについて私を助けていただければ幸いです。

4

2 に答える 2

0

The short answer is you're going to post back and filter the provinces, or use jQuery and do it on the fly.

Myself, I would post back...but that's just me.

于 2011-11-26T22:51:16.220 に答える
0

Jquery を使用することは、まだ使用していない場合でも、このような状況に最適なソリューションです。ポストバックを保存する価値があります。State(親)とCounty(子)の関係の例を次に示します。

    <asp:DropDownList ID="ddlState" runat="server">
</asp:DropDownList>
<br />
<asp:DropDownList ID="ddlCounty" runat="server">
</asp:DropDownList>

カスケード ドロップダウン リストを実装する jquery コードを次に示します。

        $(document).ready(function () {

        $("#<%= ddlState.ClientID %>").change(function () {

            var sourceddl = "<%= ddlState.ClientID %>";

            var stateid = $("#<%= ddlState.ClientID %> option:selected").val();
            var Stateid = { Stateid: stateid };

            $.ajax({
                type: 'POST',
                url: 'CacheSample.aspx/GetCounties',
                data: JSON.stringify(Stateid),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (result) {

                    if (data.d) {                     

                    var options = [];                     
                                        if (result.d) {
                                            for (var i = 0; i < result.d.length; i++) {
                                                options.push('<option value="',
                                              result.d[i].countyID, '">',
                                              result.d[i].countyName, '</option>');
                                            }

                                            $("#<%= ddlCounty.ClientID %>").html(options.join(''));
                                        }                        
                     }
                },
                error: function () {
                    alert("Error! Try again...");
                }
            });

        });

    });

選択した州の郡を取得するために webmethod を使用しています。

[WebMethod]
public static County[] GetCounties(int Stateid)
{
    County[] countiesArr = StatesCountyModel.GetCountyForState(Stateid).ToArray();
    return countiesArr;     
}

私はそれがあなたを助けるはずだと思います。Jquery 初心者の方、教えてください。プロジェクトにいくつかの JavaScript ファイルを含めるだけで、このコードを使用できます。

プラヴィーン

于 2011-11-28T11:01:55.487 に答える