jQuery: Formular opdatering af database vha. AJAX og ASP
Jeg kan ikke rigtig få følgende ajax-opdatering af min formular til at virke. Er der nogle der har nogle bud til, hvad der er forkert?HTML'en:
<div id='targets1' class='ui-dialog' title='Titel'>
<form id='targetsForm1' name='targetsForm1' method='post' onsubmit='updateTargets(1);'>
<input id='input1target' name='input1target' type='text' value='' style='width: 95%;' />
<input id='input2target' name='input2target' type='text' value='' style='width: 95%;' />
<input id='input3target' name='input3target' type='text' value='' style='width: 95%;' />
</form>
</div>
Vær her opmærksomme på, at der kan være rigtig, rigtig mange inputs, da de oprettes dynamisk alt efter antallet af inputs i databasen.
JavaScriptet - til at eksekvere ASP koden og videresende formulardataene:
function updateTargets(i) {
$('#targetsForm' + i).die().live('submit', function(e) {
e.preventDefault();
$.ajax({
type: POST,
url: functions.asp,
dataType: 'json',
cache: false,
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
data: { a: 'rapports_updatetargets', id: i, $('#' + i).serialize() },
success: function() { $('#targets' + i).dialog('close'); }
});
return false
});
}
ASP - til backend opdateringen:
if a = "rapports_updatetarget" then
sql = "select * from ctabel where id = " & id
set rs = conn.execute(sql)
if not rs.eof then
inputs = rs("inputs")
sql = "update rtabel
for i = 1 to inputs
if i = 1 then
sql = sql & " set input" & i & "target = " & replace(tal.replace(request.form(id & "input" & i & "target"), ""), ",", ".")
else
sql = sql & ", input" & i & "target = " & replace(tal.replace(request.form(id & "input" & i & "target"), ""), ",", ".")
end if
next
sql = sql & " where id = ?"
set cmd = commandCreateText(conn, sql)
call cmd.execute(, array(secure(id)))
end if
end if
Det er primært min updateTargets funktion som går galt.
Javascript-fejlen lyder på "missing : after id property", så det er vidst nok noget med dataene jeg sender med over.
Hvordan gør jeg? :)
