0

ECMAScript の仕組みがわかりません。MSDN やその他のフォーラムで確認してください。どのバージョンまたは値が javascrpt に等しいかがわかりませんでした。

if (!Request.Browser.JavaScript)
 //Do Something.

ただし、廃止の警告が表示され、代わりに ECMAScript を使用することをお勧めします。

System.Web.HttpBrowserCapabilities myBrowserCaps = Request.Browser;
if (((System.Web.Configuration.HttpCapabilitiesBase)myBrowserCaps).EcmaScriptVersion.Major < 1)
//Does not have Javascript. Do something.

ただし、JavaScriptのオン/オフの両方を試しました。どういうわけか、関数は起動されませんでした。特定の値がjavascriptに属していると思われます。ただし、 value == javascript に関連するものは見つかりません。

メタタグを使用してリダイレクトを実行できることを理解しています。しかし、これらすべてのコードをサーバーで実行したいと考えています。

4

1 に答える 1

2

まず、JavaScript を無効にして開発する必要がありますか? を参照してください。/ JavaScript のグレースフル デグラデーションはどれくらい重要ですか? .

次に、クライアント側の Javascript はクライアントにのみ存在し、それがオフの場合、明示的に何かをチェックするクライアント側のロジックは起動しません。そのため、クライアントがページから少なくとも 1 つの応答 (GET/POST クエリまたは XMLHTTPRequest) を送信するまで、それを知ることはできません。ページ上のすべてのリンクをフォームの返信にしたとしても、単に潜んでいるだけでは決して発生しない可能性があります。外部ソースからの URL を使用している可能性があります。Check if javascript is disabled?からリンクされている CodeProject の記事 などのアプローチの一例です。

この理由から (また、スクリプト バージョンとスクリプトなしバージョンの両方を作成する作業の重複を避けるため - 過去に使用された慣行)、ベスト プラクティスは、ページとフレームワークを JavaScript に依存しないものにし<noscript>、そのことをユーザーに警告するだけになったようです。関連性がある場合、ページが完全に機能しない可能性があります。

たとえば、Sharepoint はまさにそれを行います。JS を無効にすると、ページ上に警告が表示されます。たとえば、スクロールバーがなく、編集が完全に無効になります。これは、ASP.NET コントロール (SP が頻繁に使用する) は、そもそも JS が無効になっている基本的な表示を超えて機能するように設計されていないという結論につながります。

于 2013-11-12T06:29:11.423 に答える