Error 2 maal submitten
Ik heb onderstaand script. Als ik 1 van de 2 velden niet invul krijg ik netjes een error. Vul ik het veld in wat nog niet ingevuld was krijg ik nog een keer een foutmelding en klik ik voor de 2e keer dan pas gaat het goed.
Iemand een idee wat ik verkeerd doe?
Form:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<form id="formid" method="POST" action="/">
<div>
<label class="title">Title</label>
<div id="titleError"></div>
<input type="text" id="title" name="title" value="">
</div>
<div>
<label class="title">Text</label>
<div id="textError"></div>
<textarea name="text" id="text" rows="14" cols="50"></textarea><br />
</div>
<div>
<input class="btn btn-success" type="submit" id="submitButton" name="submitButton" value="Submit">
</div>
</form>
<div>
<label class="title">Title</label>
<div id="titleError"></div>
<input type="text" id="title" name="title" value="">
</div>
<div>
<label class="title">Text</label>
<div id="textError"></div>
<textarea name="text" id="text" rows="14" cols="50"></textarea><br />
</div>
<div>
<input class="btn btn-success" type="submit" id="submitButton" name="submitButton" value="Submit">
</div>
</form>
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
$(document).ready(function() {
$("#formid").submit( function(event) {
var title = $('#title').val();
var text = $('#text').val();
if( title.lenght === 0 || text.length === 0 ){
if( title.length === 0 ){
$("#titleError").html("<p>Title verplicht</p>");
return false;
}
if( text.length === 0 ){
$("#textError").html("<p>Text verplicht</p>");
return false;
}
//$("html, body").animate({ scrollTop: 0 }, 600);
}
else{
tinyMCE.triggerSave();
/* stop form from submitting normally */
event.preventDefault();
/* Send the data using post */
var posting = $.post( 'http://xxx.nl/admin/pages/create', {
title: $('#title').val(),
text: $('#text').val()
});
/* Put the results in the show-content div */
posting.done(function( data ) {
//alert(data);
$.ajax({
url: "<?php echo base_url() ?>/admin/pages",
type: 'GET',
success: function(data) {
$("#show-content").hide().html( data).fadeIn(1500);
}
,
error: function() {
alert("error");
}
});
});
}
//return false;
});
});
$("#formid").submit( function(event) {
var title = $('#title').val();
var text = $('#text').val();
if( title.lenght === 0 || text.length === 0 ){
if( title.length === 0 ){
$("#titleError").html("<p>Title verplicht</p>");
return false;
}
if( text.length === 0 ){
$("#textError").html("<p>Text verplicht</p>");
return false;
}
//$("html, body").animate({ scrollTop: 0 }, 600);
}
else{
tinyMCE.triggerSave();
/* stop form from submitting normally */
event.preventDefault();
/* Send the data using post */
var posting = $.post( 'http://xxx.nl/admin/pages/create', {
title: $('#title').val(),
text: $('#text').val()
});
/* Put the results in the show-content div */
posting.done(function( data ) {
//alert(data);
$.ajax({
url: "<?php echo base_url() ?>/admin/pages",
type: 'GET',
success: function(data) {
$("#show-content").hide().html( data).fadeIn(1500);
}
,
error: function() {
alert("error");
}
});
});
}
//return false;
});
});
Zet die dus lager.
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
if( title.lenght === 0 || text.length === 0 ) { // jouw lijn 7
if( title.length === 0 ){
$("#titleError").html("<p>Title verplicht</p>");
}
if( text.length === 0 ){
$("#textError").html("<p>Text verplicht</p>");
}
return false;
} // jouw lijn 18
if( title.length === 0 ){
$("#titleError").html("<p>Title verplicht</p>");
}
if( text.length === 0 ){
$("#textError").html("<p>Text verplicht</p>");
}
return false;
} // jouw lijn 18
----
Trouwens, je zou dit met POST moeten sturen, niet met GET.
Net zoals zonder ajax:
formulieren waarbij de gebruiker informatie post naar de website, kunnen best met POST.
Gewijzigd op 05/08/2013 10:19:05 door Kris Peeters