2011-04-28 5 views
0

jquery ajax plugin (jquery.form.js) 및 텍스트 앵커를 사용하여 양식을 제출하려고합니다. 그러나 양식이 제출되기 전에 먼저 사용자로부터 확인이 필요합니다. PHP에서텍스트 앵커가있는 ajax (jquery)를 사용하여 양식을 제출하려면 어떻게해야합니까?

<script type="text/javascript" src="../scripts/jquery.js"></script> 
<script type="text/javascript" src="../scripts/jquery.form.js"></script> 
<script> 
    function confirmDelete(speciesID, species) {   
     var answer = confirm('Are you sure you want to delete ' + species + '?'); 
     if (answer == true) 
     { 
      var options = { 
       target:  '#deleteSpeciesOutput' + speciesID 
      };  
      $('#deleteSpeciesForm' + speciesID).ajaxForm(options); 
     } 
     return false; 
    } 
</script> 

HTML :

다음은 자바 스크립트의

<form id=\"deleteSpeciesForm$speciesID\" action=\"processDeleteSpecies.php\" method=\"post\"> 
    <input type=\"hidden\" name=\"species\" value=\"" . $species[0] . "\" /> 
      <a href=\"#\" onclick=\"return confirmDelete('deleteSpeciesForm$speciesID', '" . $species[0] . "');\">delete</a> 
</form> 
<div id=\"deleteSpeciesOutput$speciesID\"></div> 

확인은 대화 상자가 나타납니다,하지만 난 '예'를 클릭 한 후 아무 일도 발생하지 않습니다. 당신의 도움을 주셔서 감사합니다.

답변

0

HTML에서 onclick을 사용하지 마십시오. 이미 jQuery를 사용하고있는 이유는 무엇입니까?

HTML

<form id="deleteSpeciesForm$speciesID" action="processDeleteSpecies.php" method="post"> 
    <input type="hidden" name="species" value="species"> 
    <a href="#">delete</a> 
</form> 

JS는

$(document).ready(function() { 
    $('#deleteSpeciesForm$speciesID a').click(function() { 
    var form = $(this).parent(); 
    var species = $('input[name=species]', form).val(); 

    var answer = confirm('Are you sure you want to delete ' + species + '?'); 
    if (answer) { 
     form.submit(); 
    } 

    return false; 
    }); 
}); 
+0

조금 조정하여 사용해 보았습니다. 아직 양식을 제출하지 않았습니다. : – dam

+0

AJAX 요청이 작성 되었습니까? Firebug 또는 Chrome을 사용합니까? – PeeHaa

0

는 마지막에 true를 돌려 가진보십시오.

$(document).ready(function() { 
    $('#deleteSpeciesForm$speciesID a').click(function() { 
    var form = $(this).parent(); 
    var species = $('input[name=species]', form).val(); 

    var answer = confirm('Are you sure you want to delete ' + species + '?'); 
    if (answer) { 
     form.submit(); 
    } 

    return TRUE; 
    }); 
}); 
+0

JS에서 소문자 'true'를 사용하면 안됩니까? – PeeHaa

+0

예, 강조하는 중입니다. p – Atticus

관련 문제