Link to home
Start Free TrialLog in
Avatar of peter_coop
peter_coopFlag for United Kingdom of Great Britain and Northern Ireland

asked on

error in ajax function

hi
when i run the following code i get an error of:

$("#addform").ajaxForm is not a function. because i am only just learning this language could someone show me why this is causing error. is it because i am not calling the form id directly but the div? many thanks
<script type="text/javascript">
function add() {
// prepare the form when the DOM is ready 
$(document).ready(function() { 
    // bind form using ajaxForm 
    $('#addform').ajaxForm({ 
        // target identifies the element(s) to update with the server response 
        target: '#htmlExampleTarget', 
 
        // success identifies the function to invoke when the server response 
        // has been received; here we apply a fade-in effect to the new content 
        success: function() { 
            $('#htmlExampleTarget').fadeIn('slow'); 
        } 
		
    }); 
});}

form
=================================================

<div id="addform" style="display:none;">
  <form action="filesadd.php" method="post" class="webform">
    <fieldset>
    <legend><span>Enter a File</span></legend>
    <label for="box">Select a Box</label>
    <select name="box">
      <option SELECTED VALUE="">Select a Box</option>
      <?php
do {  
?>
      <option value="<?php echo $row_Recordset1['boxref']?>"><?php echo $row_Recordset1['boxref']?></option>
      <?php
} while ($row_Recordset1 = mysql_fetch_assoc($Recordset1));
  $rows = mysql_num_rows($Recordset1);
  if($rows > 0) {
      mysql_data_seek($Recordset1, 0);
	  $row_Recordset1 = mysql_fetch_assoc($Recordset1);
  }
?>
      
    </select>
    <label for="fileno">File Number:</label>
    <input id="fileno" name="fileno" class="text" type="text" />
	<div id="htmlExampleTarget"></div>
    <label for="authorised">Authorised By:</label>
    <input name="authorised" type="text" class="text" id="authorised" value="<?php echo $_SESSION['kt_name_usr']; ?>" />
    </fieldset>
    <input class="submit" type="submit"  name="submit" value="Add File" />
  </form>
</div>

Open in new window

Avatar of leakim971
leakim971
Flag of Guadeloupe image

Do you load the jquery.form plugin ? Do you have somewhere something like :


<script language="javascript" src="path/to/jquery.form.js"></script>

Open in new window

Avatar of peter_coop

ASKER

hi leak. this is what i have and it is showing ok in firebug net.

<script type="text/javascript" src="/sample/admin/js/jquery.form.js"></script>
Replace by the following and remove one after one to check when it stop to run


<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/black-tie/jquery-ui.css" type="text/css"> 
<link rel="stylesheet" href="../themes/jquery-ui-sub-tabs-smoothness.css" type="text/css"> 
<link rel="stylesheet" href="../jq-new.css" type="text/css"> 
<style type="text/css"> 
form { background: #DFEFFC; border: 5px solid #c5dbec; margin: 10px 0; padding: 20px }
</style> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script> 
<script type="text/javascript" src="http://malsup.github.com/chili-1.7.pack.js"></script> 
<script type="text/javascript" src="../malsup-tabs-init.js"></script> 
<script type="text/javascript" src="http://github.com/malsup/form/raw/master/jquery.form.js?v2.43"></script>-->
<script type="text/javascript" src="http://jquery.malsup.com/form/download/jquery.form.js?v2.43"></script> 
 
<!-- 
<script type="text/javascript" src="jquery.form.js"></script>
--> 
<script type="text/javascript" src="malsup-form-demo.js"></script>

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of leakim971
leakim971
Flag of Guadeloupe image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
leak. got it working of sorts. however the success callback is being shown in the page that the form sends to addfile.php and not the div <div id="htmlExampleTarget"></div> in theform? ie,
here is the php code for filesadd.php
$sql = "SELECT custref FROM files WHERE custref = '$fileno' ";
$result = runSQL($sql) or die(mysql_error());
if (mysql_num_rows($result)>0){
   echo '<div style="background-color:#ffa; padding:20px">' . $fileno . 'Is already in the database' . '</div>';

}else{
   //insert into db;
   echo '<div style="background-color:#ffa; padding:20px">' . $fileno . 'Successfull' . '</div>';

Open in new window

thank you
You're welcome! Thanks for the points!