2013-12-12 3 views
0

У меня есть два сценария:ajaxForm плагин представления формы, как правило, без AJAX

Первое: у меня есть HTML-форму на странице, на которой я использую ajaxForm плагин для загрузки файла через AJAX и она отлично работает.

Во-вторых: Я создаю еще одну форму HTML через php и ajax, на которых я пытаюсь использовать тот же плагин, но он обычно отправляет форму и выводит результат в браузере.

Является ли это тем, что ajaxForm не работает с динамически сгенерированными формами? Я знаю, что это просто глупо даже спросить, но моя нынешняя ситуация, похоже, заставляет меня поверить в это.

Пожалуйста, помогите ...

Первой форма: Это статическая форма, написанной на HTML-странице. AJAXFORM отлично работает на этом ...

<form action="brand_add.php" method="post" enctype="multipart/form-data" name="brands_form" id="brands_form"> 
<input type="hidden" name="brand_timeVal" id="brand_timeVal" /> 
<table> 
<tr><td><label>Title<label></td></tr> 
<tr><td><input type="text" id="brand_title" name="brand_title" autocomplete="off" class="large inputTexts" placeholder="e.g. Adidas, Puma, SS, BDM, Cosco, Head, Spalding etc..." /></td></tr> 
<tr><td><label>Description<label></td></tr> 
<tr><td><textarea class="inputTexts" id="brand_desc" name="brand_desc"></textarea></td>    </tr> 
<tr><td><label>Brand Image<label></td></tr> 
<tr><td><input type="file" name="brand_img" id="brand_img" onchange="sub(this,this.id)"> </td></tr> 
<tr><td><input type="submit" class="saveButton" value="Save" id="brand_save_btn" onclick="timing(this.id,'brand_timeVal');"><button type="button" onclick="clearBox(); return false" class="cancelButton" style="margin-left:5px;">Cancel</button></td></tr> 
</table> 
</form> 

Вторая форма: Это динамически генерируется через запрос AJAX. AJAXFORM не работает.

<?php 

$response .= "<div class='update_box_header'><span class='breadcrumb'><a href='brands.php'>Brands</a></span>/Update Brand</div> 
<div class='update_box_form'> 
<form action='#' method='post' enctype='multipart/form-data' name='brands_form_update' id='brands_form_update'> 
<input type='hidden' name='brand_timeVal_update' id='brand_timeVal_update' /> 
<input type='hidden' name='brand_update_id' value='".$id."' /> 
<input type='hidden' name='brand_update_file_toggler_value' value='1' /> 
<table> 
<tr><td><label>Title<label></td></tr> 
<tr><td><input type='text' id='brand_title_update' name='brand_title_update' class='large inputTexts' value='".$row1['name']."' /></td></tr> 
<tr><td><label>Description<label></td></tr> 
<tr><td><textarea class='inputTexts' id='brand_desc_update' name='brand_desc_update'>".$row1['description']."</textarea></td></tr> 
<tr><td><label>Brand Image<label></td></tr> 

<tr><td id='brand_img_field'><img src='assets/brands/banners/".$img_path."' border='0' width='100' height='50' /></td></tr> 
<tr><td><label>Upload New Image<label></td></tr> 
<tr><td><input type='file' accept='image/*' name='brand_img_update' id='brand_img_update' onchange='sub(this,this.id)'></td></tr> 
<tr><td><label>Status<label></td></tr> 
<tr><td><select name='brand_life_update' id='brand_life_update'>"; 
     if($row1['status'] == 1){ 
$response .= "<option value='1' selected>Active</option><option value='0'>Inactive</option>"; 
      } 
     else if($row1['status'] == 0) { 
$response .= "<option value='1'>Active</option><option value='0' selected>Inactive</option>"; 
      } 

    $response .= "</select></td></tr> 
<tr><td><input type='submit' class='saveButton' value='Save' id='brand_update_btn' onclick='timing(this.id,'brand_timeVal_update');'><button type='button' onclick='clearUpdateBox(); return false' class='cancelButton' style='margin-left:5px;'>Cancel</button></td></tr> 
</table> 
</form> 
</div>"; 


?> 
+0

Можете ли вы дать нам код Fidde/some code, чтобы мы могли понять, что происходит не так? – daker

+0

@daker У меня есть две формы, которые написаны в HTML (статические) и другие, которые динамически генерируются через AJAX. Вы хотите, чтобы я написал здесь две формы? – coder101

+0

@daker Я отредактировал вопрос .. – coder101

ответ

1

Сообщите свой код javascript.


Слепой догадка: вы пытаетесь настроить ваш ajaxForm перед тем это на самом деле присутствует в странице.

Если вы хотите запустить ajaxForm на '#brands_form_update', вам необходимо запросить его, вставить в документ, , затем вызвать ajaxForm. Это должно дать что-то вроде:

// $.get(...) sends the request 
// $(..).append inserts the form inside the document 
// $('#brands_form_update').ajaxForm() sets up the form 
$.get('myDynamicForm.php', { ...data...}, function(html){ 
    $('*mySelector*').append(html); 
    $('#brands_form_update').ajaxForm(); 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^