Ice-Capped Mountains Ответов: 0

Как я могу сделать так, чтобы этот скрипт сокращения URL-адреса работал правильно?


<!DOCTYPE html>

  <div class="row flex-center">
    <div class="col-8 col">
      <h2>AAA URL Shortener</h2>
      
        <div class="form-group">
          URL Here:
          
            <script>
            function generatePath id="url" (path = 'url') {
            let characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
            let position = Math.floor(Math.random() * characters.length)
            let character = characters.charAt(position)
            if (path.length === 7) {
            return path
             }
            return generatePath(path + character)
            </script>
        </div>
        <div id="message" class="alert alert-primary"></div>
        
      
      <p class="padding-top">
      </p>
    </div>
  </div>

<script>
   function generatePath id="url" (path = 'url') {
    let characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
    let position = Math.floor(Math.random() * characters.length)
    let character = characters.charAt(position)
  if (path.length === 7) {
    return path
  }
  return generatePath(path + character)
  </script>
  <div id="clockbox" style="font: 14pt Arial; color: #CCCCFF">
    <script>
      tday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
      tmonth=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
      
      function GetClock(){
      var d=new Date();
      var nday=d.getDay(),nmonth=d.getMonth(),ndate=d.getDate(),nyear=d.getFullYear();
      var nhour=d.getHours(),nmin=d.getMinutes(),nsec=d.getSeconds(),ap;
      
      if(nhour==0){ap=" AM";nhour=12;}
      else if(nhour&lt;12){ap=" AM";}
      else if(nhour==12){ap=" PM";}
      else if(nhour>12){ap=" PM";nhour-=12;}
      
      if(nmin&lt;=9) nmin="0"+nmin;
      if(nsec&lt;=9) nsec="0"+nsec;
      
      document.getElementById('clockbox').innerHTML=""+tday[nday]+", "+tmonth[nmonth]+" "+ndate+", "+nyear+" "+nhour+":"+nmin+":"+nsec+ap+"";
      }
      
      window.onload=function(){
      GetClock();
      setInterval(GetClock,1000);
      }
      </script>
      <div id="clockbox"></div>
    </div>



Я не вижу результатов укорочения, и функция, похоже, не отформатирована должным образом. Я хотел бы, чтобы новый URL-адрес отображался на той же странице.

Что я уже пробовал:

Различные формы письма, как на странице, так и во внешнем документе.

Richard Deeming

Вы можете начать с исправления синтаксических ошибок в вашем generatePath функция:

function generatePath(id="url", path = 'url') {
    const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    let position = Math.floor(Math.random() * characters.length);
    let character = characters.charAt(position);
    if (path.length === 7) {
        return path;
    }
    
    return generatePath(path + character);
}


Кроме того, на ваш вопрос почти невозможно ответить. Вы не предоставили пользователю никакого способа ввести значение или вызвать ваш шортенер. Вы нигде не указали в документе, чтобы отобразить результат. И вы не показали, как вы собираетесь сопоставить случайно сгенерированную строку с исходным URL-адресом.

0 Ответов