2017-11-14 9 views
1

私は値が5の整数を持っています。私はそれに対してループし、htmlの範囲またはforループを使用して次のようにドロップダウンします。いずれかをあなたが最初にあなたがarrayslicemap、またはchannelのように、オーバー範囲にすることができるものが必要ビューテンプレート内のBeego範囲

<a class="dropdown-item" href="#">1</a> 
<a class="dropdown-item" href="#">2</a> 
<a class="dropdown-item" href="#">3</a> 
<a class="dropdown-item" href="#">4</a> 
<a class="dropdown-item" href="#">5</a> 

答えて

0

ことを行う方法を私を助けることができます。

たとえば、Goコードでは、スライス(int)([]int)を作成し、それをテンプレートデータに割り当てます。

あなたはオーバー itemsそうのような範囲にすることができるテンプレート内部の今
items := []int{1, 2, 3, 4, 5} 
this.Data["items"] = items 

Go playgound

{{range $val := .items}} 
<a class="dropdown-item" href="#">{{$val}}</a> 
{{end}} 

func numSequence(num int) []int { 
    out := make([]int, num) // create slice of length equal to num 

    for i := range out { 
     out[i] = i + 1 
    } 
    return out 
} 

fmt.Println(numSequence(5)) 
// Output: [1, 2, 3, 4, 5] 

fmt.Println(numSequence(7)) 
// Output: [1, 2, 3, 4, 5, 6, 7] 

実行例を。

注意:プレイグラウンドはサードパーティのパッケージのインポートをサポートしていないため、この例ではbeegoフレームワークを使用する代わりにhtml/templateパッケージを使用してテンプレートを実行しますが、beegoはhtml/templateを使用しているのでまた、サンプルテンプレート(-}})のハイフンは、次のトークンまで空白を取り除きます。したくない場合は、使用する必要はありません。

+0

返信ありがとうございますが、私の場合、私は数字の範囲が異なり、それぞれの場合、このドロップダウンは異なります。どのように私は番号 –

+0

に基づいて別の配列を得ることができます行く[forループ](https://golang.org/ref/spec#For_statements)と[追加](https://golang.org/ref/speC#Appending_and_copying_slices)を使用して任意の長さのスライスを作成します。実際には、アイテムの数を知っていて、スライスを正しい長さに初期化してからインデックスを使用してスライス要素の値を設定するだけで、appnedを使用する必要はありません。 – mkopriva

+0

@RavindraMandalapu一連の数値を作成する方法の例を追加しました。 – mkopriva

関連する問題