создать динамический c URL в мопса - PullRequest
3 голосов
/ 28 апреля 2020

Я объявил переменную с именем "name". Когда пользователь нажимает на форму, он должен вызвать функцию myFunction, которая присваивает значение, которое пользователь вводит в имя переменной. Например, если пользователь вводит «Джон». URL будет localhost: 5000 / профиль / Джон. Но я получаю document.getElementById ("имя пользователя") не определено.

-let name = "gg";    
    //- -function enteringName() {
    //-      - name = document.getElementById("username").value;
    //- -};

    <h1>Log in</h1>
    <form action="/profile/#{name}"  method="POST" id="loginForm" onclick="#{myFunction()}" >
      <label for="username">username:</label><br />
      <input type="text" id="username" name="username"/>
      <br />
      <label for="password">password:</label><br />
      <input type="text" id="password" name="password" /><br /><br />
      <input type="submit" value="Log in" />
      <br />
    </form>
    <p>

      <a href="http://localhost:3000/registration">register here</a>
    </p>
    <script>

function myFunction() {
 -name = document.getElementById("username").value;
}
</script>

1 Ответ

0 голосов
/ 28 апреля 2020

попробуйте это. Были некоторые проблемы с отступом мопса. Также pug - это только серверный рендеринг html, но на стороне клиента вы должны установить имя для элемента js. Протестировал этот код в codepen, посмотрите там тоже https://codepen.io/aidonline01/pen/rNOwWJY:)

-let name = "gg";
//- -function enteringName() {
//-      - name = document.getElementById("username").value;
//- -};

<h1>Log in 1</h1>
  <form action="/profile/#{name}"  method="POST" id="loginForm" onclick="myFunction()" >
    <label for="username">username:</label><br />
    <input type="text" id="username" name="username"/>
    <br />
    <label for="password">password:</label><br />
    <input type="text" id="password" name="password" /><br /><br />
    <input type="submit" value="Log in" />
    <br />
  </form>
<p>

<a href="http://localhost:3000/registration">register here</a>
</p>
script
  .
    function myFunction() {
      #{name} = document.getElementById("username").value;
      document.getElementById("loginForm").action = `/profile/${#{name}}`;
    }
...