Форма onsubmit ждет 5 секунд, а затем обновляет страницу? [Дубликат]

В java 8 это легко. есть два ключевых слова

  1. stream: Arrays.stream(intArray).forEach
  2. ссылка метода: ::println
    int[] intArray = new int[] {1, 2, 3, 4, 5};
    Arrays.stream(intArray).forEach(System.out::println);
    

Если вы хотите напечатайте все элементы массива в одной строке, а затем используйте print вместо println, т. е.

int[] intArray = new int[] {1, 2, 3, 4, 5};
Arrays.stream(intArray).forEach(System.out::print);

. Другой способ без ссылки на метод просто использовать:

int[] intArray = new int[] {1, 2, 3, 4, 5};
System.out.println(Arrays.toString(intArray));
7
задан strager 24 February 2013 в 02:58
поделиться

5 ответов

Вам нужно будет поместить возвращаемую ложную часть после функции post () в обработчик onsubmit, например:

<form onsubmit="post();return false;">
//input fields here
</form>
12
ответ дан strager 28 August 2018 в 05:12
поделиться

Вам нужно фактически вернуть false из вашего встроенного обработчика dom-0. Поэтому измените

onsubmit = "post();">

на

onsubmit = "return post();">

Или вы можете указать свою форму id и сделать это:

<form id="form1" onsubmit = "post();">

Затем из безопасное место, в котором ваш дом готов:

document.getElementById("form1").onsubmit = post;
2
ответ дан Adam Rackis 28 August 2018 в 05:12
поделиться

Держите js вне DOM.

<form id="myform" action="somepage.php" method="post">
//input fields
</form>

JQuery:

$('#myform').submit(function(event){
    alert('submitted');
    event.preventDefault();
});
6
ответ дан AlienWebguy 28 August 2018 в 05:12
поделиться

Поскольку вы добавили тег jQuery, это лучший способ сделать это: ненавязчивое событие attach

$('form').submit(function(){
        alert('the form was submitted');
        return false;
    });

По-вашему, это должно быть:

<form onsubmit="return post();">
2
ответ дан gdoron 28 August 2018 в 05:12
поделиться

Поскольку этот пост отмечен jQuery, я предлагаю следующее решение:

$('form').submit(function(e){
  //prevent the form from actually submitting.
  e.preventDefault();
  //specify the url you want to post to.
  //optionally, you could grab the url using $(this).attr('href');
  var url = "http://mysite.com/sendPostVarsHere";
  //construct an object to send to the server
  //optionally, you could grab the input values of the form using $(this).serializeArray()
  var postvars = {};
  //call jquery post with callback function
  $.post(url, postvars, function(response){
    //do something with the response
    console.log(response);
  }, 'json')
});
1
ответ дан Jordan Arseno 28 August 2018 в 05:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: