Добавьте «http://” или« https://” »к URL-адресу, содержащему только относительный URL-адрес, начинающийся с« www ». - PullRequest
0 голосов
/ 02 октября 2018

Может ли кто-нибудь помочь мне исправить этот маленький код, добавив протокол «http://” или« https://” »к URL-адресу, содержащему только относительный URL-адрес, начинающийся с« www »

<script>
function formatUrl(url)
{
    var httpString = "http://";
    var httpsString = "https://";
    if (url.substr(0, httpString.length).toLowerCase() !== httpString && url.substr(0, httpsString.length).toLowerCase() !== httpsString)
                url = httpString + url;
    return url;
}
</script>



  <form id=url type=get action='answers.asp'  >
  <input type=text name=URL size=10 value="" ><br><br>
  <input type=submit name=url2  **onclick="formatUrl()"** value="Enter Url">
  </form>

Входное значение= www.elmundo.es или любой другой относительный URL, начинающийся с www

заранее спасибо

1 Ответ

0 голосов
/ 02 октября 2018

На самом деле это довольно простая задача:

function formatURL(url)
{
    if(url.substr(0,3) === "www")
    {
        return "https://"+url;
    }
    return url;
}

Вы можете добавить некоторые дополнительные проверки безопасности (если URL меньше 3) - но вы обычно можете проверить, начинается ли URL с wwwЕсли да, то вы просто добавляете в него нужный протокол (если я правильно понял ваш вопрос).

Ах, я думаю, теперь я получил то, о чем вы просили.

<script>
function formatURL()
{
    var url = document.getElementsByName("URL")[0];
    var formattedURL = document.getElementsByName("formattedURL")[0];
    url = url.value;
    if(url.substr(0,3) === "www")
    {
        formattedURL.value = "https://"+url;
        return;
    }
    formattedURL.value = url;
}
</script>

<form id=url type=get action='answers.asp'>
  <input type="text" name="URL" size=10 value=""  onchange="formatURL()"><br><br>
  <input type="hidden" name="formattedURL">
  <input type="submit" value="Enter Url">
  </form>

Этоустановит URL-адрес, отформатированный в скрытое поле formattedURL - однако, это только в том случае, если вы действительно хотите сделать это в Javascript полностью.Я бы сделал это на стороне сервера, лично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...