time update
Pagina: « vorige 1 2 3 volgende »
overgens is het niet echt nodig om in de updatetime.php zoveel te echo'en gezien de gebruiker die pagina toch niet ziet (javascript bezoekt hem tenslotte, niet de gebruiker)
daar werkt het script wel gewoon in...
hoe is dit mogelijk?
staat javascript in internet explorer uit?
en ik merk wel dat hij heeeeeel langzaam gaat typen :P
weet je zo ook hoe ik hem iets kan wijzigen waarna hij hem alleen maar met bijvoorbeeld 'a' update...
dat scheelt een heel hoop dataverkeer?
Wellicht je 'onkeypress'-event aanpassen, en pas een verzenden als er wordt gesubmit.
het gaat er dus om dat de sessie niet kan verlopen als mijn 'collega's 'hier aan het typen zijn...
kan ik er dus nu voor zorgen bijvoorbeeld als er op a,e wordt gedrukt dat hij dan het script gaat uitvoeren...?
internet explorer en firefox gaan allebei anders met javascript om, maar als je dat gefixed wilt hebben dan moet hier iemand op reageren die meer verstand van javascript heeft dan ik (A)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript" language="javascript">
<!--
function update_status(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
-->
</script>
<!--
function update_status(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
-->
</script>
maar omdat ik juist wil dat het script uitgevoerd wordt als ik bijvoorbeeld alleen een a type...
heb ik er dit van gemaakt:
maar deze werkt niet...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript" language="javascript">
<!--
function update_status(){
if( key == 'a'){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
ELSE
{
alert("hoi");
}
-->
</script>
<!--
function update_status(){
if( key == 'a'){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
ELSE
{
alert("hoi");
}
-->
</script>
ook wordt javascript nog niet uitgevoerd in internet explorer...
wel in firefox en chroom...
waaran licht dit dan?
en wat moet ik veranderen
is er iemand die hier mij wat mee kan helpen?
key == null.
if (null == a) {
//dus niet
}
hij werkt ook niet...
key dacht ikdat gewoon ingegeven werst op toetsenbord...
inderdaad, je moet de key code eerst opvangen, dat deed je (dacht ik) met de event van javascript (ook iets waar IE en FF verschillend over denken) dit is makkelijk te vinden op google als je zoekt op javascript keycode event (oid)
Je geeft je functie niks mee.
'key' bestaat dus ook niet. Je kan dus nooit 'key' daar gebruiken op controle.
je kunt hiervoor de 'keyCode' van de 'event' (keydown?) gebruiken.
Lees hiervoor bijvoorbeeld: http://www.ryancooper.com/resources/keycode.asp
bedankt voor de hulp,
hij update nu alleen bij enter...
maar hij werkt alleen in chroom en firefox,
is hier ook iets voor?
anders zou je wss alles in try catch statements moeten zetten (ondersteund javascript dat eigenlijk wel?) en anders maar overal if'jes omheen zetten
Als die geen fouten geeft, dan testen in IE en anderen.
en daar geeft hij aan:
e is not defined
bij de foutconsole van firefox,
hier stukje code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script type="text/javascript" language="javascript">
<!--
document.onkeydown = checkKeycode
function checkKeycode(e) {
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
if(keycode == 13){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);;
}
}
-->
</script>
Omschrijving:<br>
<textarea name="Omschrijving" cols=90 rows=20 onkeypress="return checkKeycode(e);"></textarea><br>
<input type="hidden" name="naam" value="<?=$zoeknaam?>">
<input type="submit" name="verzenden" value="Verzenden!">
</font>
</form>
<!--
document.onkeydown = checkKeycode
function checkKeycode(e) {
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
if(keycode == 13){
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);;
}
}
-->
</script>
Omschrijving:<br>
<textarea name="Omschrijving" cols=90 rows=20 onkeypress="return checkKeycode(e);"></textarea><br>
<input type="hidden" name="naam" value="<?=$zoeknaam?>">
<input type="submit" name="verzenden" value="Verzenden!">
</font>
</form>
Pas je code aan voor joun applicatie (hij werkt alleen op enter)...
(joh)
Verder: Je controleert nu je HELE document. als er WAAR DAN OOK iets gedrukt word vuurt die de functie af.
Zet de event dus op de textarea.
Daarnaast zou je dit kunnen proberen;
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
function checkKeycode() {
var keycode;
if (window.event) keycode = window.event.keyCode;
if (keycode!= null) { //die null weet ik niet zeker. moet iig controle zijn of keycode bestaat.
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
}
var keycode;
if (window.event) keycode = window.event.keyCode;
if (keycode!= null) { //die null weet ik niet zeker. moet iig controle zijn of keycode bestaat.
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
}
ik weet dath ij alleen op enter werkt,
dit is ook de bedoeling,
enter werkt beter dan a...
overigens...
in de pagina zit maar 1 tekstveld dus dat maakt niet erg veel uit...
heb jou code eens geprobeerd maar hij werkt niet...
doet helemaal neits,
geen error,
maar voert ook niets uit
dit is nu codE:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
document.onkeydown = checkKeycode
function checkKeycode(e) {
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
if(keycode == 13){
try
{
// Firefox code
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
catch(e)
{
// IE code
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
}
}
function checkKeycode(e) {
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
if(keycode == 13){
try
{
// Firefox code
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
catch(e)
{
// IE code
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET", "updatetime.php", false);
xmlhttp.send(null);
}
}
}
maar werkt nog niet..,.
firefox werkt hij,
crhoom ook,
ie8 niet...
du denk dat dat stukje code ook nog niet juist is...
Dit is het ontwikkelhulp programma voor Internet explorer. Hiermee moet je de fouten kunnen opsporen die specifiek zijn voor ie8.
IE is een stuk gevoeliger wat betreft javascript. Aangezien jij nog steeds hetzelfde gebruikt (e). Zal hij waarschijnlijk daarop eruit knallen.
Daarnaast, mijn code is niet perfect I know. Ik kan namenlijk niet je website zien. Ik doe suggesties en die moet je proberen te implementeren. niet 1op1 overnemen.
FireFox/Chrome/Opera/Safari zullen (meestal) alleen doen op het moment dat 1 van de 4 werkt.
IE6, 7, 8 moet je alle drie apart controleren.
maar internet explorer ondersteunt kennelijk niet xmlhttprequest...
vandaar dat daar iets anders voor gevonden dient te worden...