2014-01-23 2 views
0

다른 단추에 대해 php 파일에 여러 양식이 있습니다. 그래서 Back 버튼을 클릭하면 ramesh.php 스크립트가 호출되어야합니다. 이것은 코드입니다.단일 양식의 javascript 함수 호출

<form action="ramesh.php"> 
<input type="submit" value="Back" /> 
</form> 

<form action="process.php" method="post"> 
<input name="rep_skyline" type="text" /> 
<input type="submit" /> 
</form> 

<form action="update.php" method="post" > 
<button type="submit">Update</button> 
</form> 

그러나, 난 그냥 갱신 버튼 제출 양식 내 클라이언트 측에서 서버로 일부 데이터를 전달해야합니다. 나는 아래와 같이 서버 측에 데이터를 보내는 자바 스크립트 함수를 가지고있다.

<script type="text/javascript"> 
$(document).ready(function() { 
$('form').submit(function(e) { 
var mydata = 3; 
if ($(this).is(':not([data-submit="true"])')) 
{ 
     $('form').append('<input type="hidden" name="foo" value="'+mydata+'">'); 
     $('form').data('submit', 'true').submit(); 
     e.preventDefault(); 
     return false; 
}  
}) 
}) 
</script> 

나는 갱신 버튼을 클릭하면

은 자바 스크립트 기능이 잘 작동된다. 그러나 또는 버튼을 클릭하면 버튼을 제출합니다. javascript 기능을 호출하면 안됩니다. 이것을 할 수있는 방법이 있습니까?

+0

같은 submit();를 사용할 수 있습니까? – njzk2

+0

업데이트 양식의 기능에 영향을주는 더 구체적인 선택기 (예 : id)를 사용하지 않는 이유는 무엇입니까? – njzk2

+0

또한 숨겨진 필드를 직접 양식에 넣지 않으시겠습니까? – njzk2

답변

2

양식이 id 보내기 그러나,

$("#update-form").submit(function() { 
    // Code 
}); 

난 당신이 자바 스크립트를 동적으로 폼에 데이터를 추가해야하는 이유 아주 확실하지 않다 :

<form action="update.php" method="post" id="update-form"> 

그런 다음 더 구체적인 선택기를 사용 . <input type="hidden" />을 직접 사용해야합니다.

1

type=submit은 항상 양식의 작업을로드합니다. 제출할 양식을 지정하십시오.

<form name="backForm" id="backForm" action="ramesh.php"> 
    <input type="submit" value="Back" /> 
</form> 

<form name="form2" id="form2" action="process.php" method="post"> 
    <input name="rep_skyline" type="text" /> 
    <input type="submit" /> 
</form> 

이제 document.backForm 또는 document.getElementById("backForm")를 통해 양식을 액세스하고보다 당신이 링크를 사용하지 않는 이유 document.getElementById("backForm").submit();