Javascript при выполнении загрузки - PullRequest
0 голосов
/ 18 февраля 2012

У меня есть поле ввода на моей странице PHP.Когда значение вводится в поле ввода, вызывается JavaScript и значения MySQL возвращаются рядом с полем ввода.Это работает на 100% без ошибок.

Мой код для этого:

<input type=text id=sku1 name=sku1 onchange="showUser(1, this.value)" onkeypress="return enter(document.orderform.sku2)"  value=<? echo $sku1; ?> >

Когда пользователь отправляет форму, страница возвращается к себе, когда выполняются некоторые вычисления.Когда страница перезагружается, поле ввода имеет значение, введенное пользователем ($ sku1).Моя проблема в том, что значения mysql больше не находятся рядом с полем ввода, поскольку поле ввода не изменилось с момента перезагрузки.

Я хочу использовать что-то вроде функциональности javaascript OnLoad.

<input type=text id=sku1 name=sku1 onchange="showUser(1, this.value)" OnLoad="showUser(1, this.value)" onkeypress="return enter(document.orderform.sku2)"  value=<? echo $sku1; ?> > 

Это, однако, не работает.

Есть идеи, как заставить javascript выполняться при загрузке, а также когда пользователь изменяет значение поля ввода?

Спасибо и С уважением, Райан Смит

Ответы [ 3 ]

2 голосов
/ 18 февраля 2012

Используйте метод готовности документа jquery или попробуйте поместить showUser в тело загрузки

1 голос
/ 18 февраля 2012

Я бы предложил использовать DOMContentReady, а не Load, поскольку это сработает раньше. Вам также нужно будет прикрепить слушатель к документу, а не к самому элементу ввода, так как элемент ввода не обеспечивает событие загрузки (http://www.w3.org/TR/html4/interact/forms.html#h-17.4)

Итак, в теге скрипта или в отдельном файле JavaScript:

document.addEventListener('DOMContentReady', function(){
  showUser(1,document.getElementById('sku1'));
})
1 голос
/ 18 февраля 2012

Вы можете использовать onload событие, подобное этому:

<script>
  var value = document.getElementById('sku1').value;
  window.onload = function() { showUser(1, value); }
</script>
...