質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

538閲覧

HTMLの動的生成方法について

TetraUser

総合スコア1

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/06/16 08:50

前提・実現したいこと

異なる入力画面を大量に作ろうとしています。
内容ですが、各画面表示する項目は違うのですが、作りはどれも一緒です。​

なるべくコーディング量を抑えたいので、1つ汎用的なHTMLを作り、各画面に表示する項目はDBなど(※)外部で管理して、リクエスト毎に画面を生成するというようなことをしたいです。​
(※)現場の特性上、モジュールをリリースしようとすると手間ですが、DBは好きにいじれるので、DBを使いたいという背景があります。​

ゼロから作ろうにも当方知識不足で思いつかなかったので、​
どこかでうまくいっている仕組みを踏襲したいと考えております。​
どなたかご存知の方いらっしゃれば教えていただけますでしょうか。

開発言語などもまだ未選定で、この課題次第が解決できる言語にしようと思います。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

どこかでうまくいっている仕組みを踏襲したい

割とどのようにも作れるので、「まずやってみることから」ではないでしょうか。

DB使いたい

どうやったら使えるか。どういう言語なら使えるか
(ここまで落とし込めば調べれば幾らでも出てくる)

1つ汎用的なHTMLを作り、各画面に表示する項目はDBなど(※)外部で管理して、リクエスト毎に画面を生成するというようなことをしたいです。​

汎用的=テンプレート

テンプレート的に画面を生成したい

どうやったらHTMLをテンプレート化できるか、どういう言語なら使えるか
(ここまで落とし込めば調べれば幾らでも出てくる)


必要なのはいきなり手法を求めることではなく、要件を細分化することからだと思います。
細分化できればそれぞれ調べるのはそこまで難しいことではないですし、個々の検証に割く時間や労力もある程度は見えるものかと思います。
それらをどう組み合わせるかはまた考えれば良いことで、部品が何もできてない状態で考えることではないと思います。

要件の細分化、調査、検証

そこから選定です。

投稿2020/06/16 11:36

m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TetraUser

2020/06/16 14:02

ご回答ありがとうございます。そうですね。他の方から頂いた知識をいかしつつ、作ってみようと思います。
m.ts10806

2020/06/16 20:55

作るのは後です。 Howではなく、What,Whyから。
guest

0

ベストアンサー

yambejpさんの回答通り、
フロントエンドフレームワークやライブラリを使用するのが一番かと思いますが、

ゼロから作ろうにも当方知識不足で思いつかなかったので

を踏まえて、自作するなら必要な知識と技術を少しだけ回答させていただきます。

SPAを理解する。

本質問のように、一ページ完結で、複数ページがあるようにする実装のことを、
Single Page Applicationと言います。
知識と、どういうものなのかは勉強は必須です。

JavaScriptは必須

これができないと、動的もクソもないので、必要です。
また、自作ではなく、フレームワークを使う上でも、必須となります。

DOMコントロール含めネイティブJSは卓越していかねばならない

jQuery少し使える程度では、壁はかなり大きくなるでしょう。
ネイティブもガッツリ使いこなせていないと、難しくなってくると思います。

Ajax処理、API連携はかなり使うことになる

基本的にはフロントエンドからはDBに直接つなぐことはしません。(そして多くの場合できない)
なぜなら、セキュリティもクソもないからです。
(JSONPという技術も存在するが・・・)
なので、API連携はかなり使うことになるので、習得しておきましょう。

ページ履歴処理を自作する

これはSPAであることと、自作ならば、かなり大変なものになります。
戻るボタンや更新ボタン押下時の挙動など、コントロールするには、履歴をコントロールすることが必要不可欠です。
locationhistoryオブジェクトとお友達になることが秘訣になります。

まだまだありますが、以上です。

投稿2020/06/16 09:18

miyabi_takatsuk

総合スコア9555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TetraUser

2020/06/16 14:03

詳細な情報ありがとうございます。頂いたトピックを深掘りし実際に作ってみます。
guest

0

vueやreactなどテンプレートを利用できるjsライブラリで運用するとよいでしょう

投稿2020/06/16 08:54

yambejp

総合スコア116724

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TetraUser

2020/06/16 14:05

ご回答ありがとうございます。教えて頂いたもので実際に作っていこうと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問