如何设计javascript多字段提示框
How to design javascript prompt box with multiple fields
据我的研究表明,您无法使用可从 JavaScript 调用的任何内置方法来创建多字段提示对话框。那么大部分路由器(192.168.0.1)的首页是如何开发认证提示框的,如下图?
我做了更多研究,发现您可以使用 php
设置基本的 http 身份验证
$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";
当服务器需要 HTTP 身份验证但已提供 none 时,这是一项浏览器功能。这是 "one field" 规则的唯一例外,您没有 JS API 可以调用它。 (更不用说它的丑陋和用户体验与 alert()
或 prompt()
一样糟糕)。
据我的研究表明,您无法使用可从 JavaScript 调用的任何内置方法来创建多字段提示对话框。那么大部分路由器(192.168.0.1)的首页是如何开发认证提示框的,如下图?
我做了更多研究,发现您可以使用 php
设置基本的 http 身份验证$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";
当服务器需要 HTTP 身份验证但已提供 none 时,这是一项浏览器功能。这是 "one field" 规则的唯一例外,您没有 JS API 可以调用它。 (更不用说它的丑陋和用户体验与 alert()
或 prompt()
一样糟糕)。