0

2つのシーケンスのコンテンツをWebページに表示しようとしています。最初の1つには画像の名前が含まれ、2番目の画像には画像へのURLが含まれます。これらの2つのリストを反復しようとすると(foreachのようなforループを使用して)問題が発生します。これにより、複数の画像名または複数の画像(つまり、完全な混乱)が発生します。これが私のページレンダリングコードの例です(シーケンスはを使用してベクトルに変換されます(vec(flatten (sequence)))):

    (defn view-output []
  (view-layout
   [:h2 "default images"]


   [:form {:method "post" :action "/"}
     ( for [manganame ["image1" "image2"]]
       [:input {:type "text" :value manganame}]) 

       (for [manga-image["image1URL" "image2URL"]]
         [:img {:src manga-image}[:br] [:br][:br]])  ] ))

このコードは、最初に名前を表示し、次に写真を表示します。誰かがこれらの値を隣り合わせに挿入する方法を提案できますか(おそらく実装のようなテーブル)

                               Image_name1
                               Picture1

                             Image_name2
                               Picture2

また

                    Image_name1      Image_name2
                      Picture1         Picture2

ありがとう

4

2 に答える 2

2

正しいコードは次のとおりです。

(defn view-output []
  (view-layout
    [:h2 "default images"]
    [:form {:method "post" :action "/"}
    (interleave 
      (for [manga-name ["image1" "image2"]]
           [:input {:type "text" :value manga-name}]) 
      (for [manga-image["image1URL" "image2URL"]]
           [:img {:src manga-image}[:br] [:br][:br]]))]))

[:input] [:img] [:input] [:img]のリストが必要な場合。

私の以前の答えは[:input:img] [:input:img]を返していました:

(defn view-output []
  (view-layout
    [:h2 "default images"]
    [:form {:method "post" :action "/"}
    (for [[manganame manga-img] (map vector ["image1" "image2"] ["image1URL" "image2URL"]))]
      (concat 
         [:input {:type "text" :value manganame}] 
         [:img {:src manga-image} [:br ] [:br ] [:br ]]))]))
于 2012-05-09T09:20:28.313 に答える
1
(mapcat (fn [manganame mangaimage]
          [[:input {:type "text" :value manganame}]
           [:img {:src mangaimage}]
           [:br] [:br] [:br]])
        ["image1" "image2"]
        ["image1URL" "image2URL"])

与える

([:input {:type "text", :value "image1"}]
 [:img {:src "image1URL"}]
 [:br] [:br] [:br]
 [:input {:type "text", :value "image2"}]
 [:img {:src "image2URL"}]
 [:br] [:br] [:br])
于 2012-05-10T05:51:57.480 に答える