2016-07-03 6 views
0

私の研究からわかるように、JavaScriptから呼び出せるビルトイン・メソッドを持つ複数フィールドのプロンプト・ダイアログを使用することはできません。では、以下に示すように、ほとんどのルータ(192.168.0.1)のホームページに認証プロンプトボックスを作成するにはどうすればよいですか?複数のフィールドを持つjavascriptプロンプト・ボックスを設計する方法

私は少しより多くの研究を行なったし、セットアップの基本的なHTTP認証これは、サーバがHTTP認証を必要とする場合、ブラウザの機能ですが、どれもなかったPHP

$user = 'user'; 
$password = 'pass'; 
if (!($_SERVER['PHP_AUTH_USER'] == $user && $_SERVER['PHP_AUTH_PW'] == $password)) { 
    header('WWW-Authenticate: Basic realm="Please enter username and password to access this website"'); 
    header('HTTP/1.0 401 Unauthorized'); 
    echo '<h1>Unauthorized Access</h1>'; 
    exit; 
} 
echo "normal website contents"; 

1

+6

このボックスはJavaScript自体ではなく、ブラウザ自体から来ています。これは[HTTP基本認証](https://en.wikipedia.org/wiki/Basic_access_authentication)の一部です。 – Thomas

答えて

4

を使用することができますことを発見しました提供されます。これは "1つのフィールド"ルールの唯一の例外であり、呼び出すJS APIはありません。 (それは醜いことは言うまでもなくUXはalert()またはprompt()と恐ろしいほどです)。

+0

Webページにこれを実装するための回避策はありませんか? –

+1

@JayGhoshいいえ、あなたもそうはなりません。アラートとプロンプトは、システムレベルのダイアログです。決定が必要な場合にのみ使用してください。***今や世界が勃発します***、選択できないテキストと避けられないウィンドウを与えて、ブラウザの人質を保持することを正当化するものはほとんどありません。 –

+0

ありがとうございました。いいえ、実際の状況で使用する予定はありませんでした。ちょうどそれがどのように動作するか興味があります –

関連する問題