1

現在の MVC プロジェクトで JavaScript の取り組みをより適切に構築する方法を理解したいと思っています。アプリケーションでのシナリオから、誰かが特定の例を説明するのを手伝ってくれるかどうか疑問に思っていました。

私は多くのデスクトップ開発経験とかなりの量の Web 開発経験を持っていますが、比較して JavaScript に手を出しただけであり、理解と習熟度の両方に改善の余地がたくさんあると感じています。具体的には、W3C DOM 標準を最大限に活用する方法についてです。

私のサイトには、いくつかの文字列データ、ブール値、および日付をアクション メソッドに投稿する単純なフォームがあります。このメソッドのシグネチャは次のとおりです。

MVC コントローラーの署名

    [HttpPost, ValidateAntiForgeryToken]
    public void PostNewEntry(string text, string localUsersDateTime, bool isPublic)

フォームの html 属性の一部として次のように定義しています。

インライン JavaScript 関数呼び出し

new { @name = "createentry", @onsubmit = "setLocalDateTime(this.localUsersDateTime);" }

localUsersDateTime は、フォームの送信時に小さな JavaScript 関数 (インラインではなく別の .js ファイルに保存されます) を実行するフォーム上の非表示の入力要素です。フォーム データが Web サイトに送信されます。setLocalDateTime 関数は次のようになります。

JavaScript 関数 (MyScripts.js)

function setLocalDateTime(obj) {
    obj.value = moment().format("YYYY-MM-DD HH:mm:ss");
}

このシナリオについて 2 つの質問があります。

これを真に目立たない JavaScript にするにはどうすればよいでしょうか?

Javascriptがなくても実際に適切に劣化し、ユーザーのローカル日時を取得するにはどうすればよいですか?

Facebook のようなサイトでは、JavaScript をオフにすると、かなりの量のサイトが提供されない (チャット、ニュースフィードの更新) だけであることに気付きましたが、私のシナリオでは、ユーザーのローカル日時を取得しないことは単にオプションではありません。これは、私の Web サイトでこの特定の状況を正しく運用するための基本です。

4

0 に答える 0