2011-01-19 3 views
0

이 양식을 facebox로 보내 겠지만 입력란 이름의 값은 통과하지 못합니다. 작업 URL의 값을 사용하여 양식을 제출하려면 어떻게해야합니까? (나는 더 쉬운 방법이 있다고 확신한다).양식을 값 Id로 전송

<form action="javascript: jQuery.facebox({ajax:'livescore/quickhistory.php'});"  id="search-form" method="post"> 
<div class="wrapper"> 
<input type="text" id="name" value="Gamer Look Up" onBlur="if(this.value=='')  this.value='Gamer Look Up'" onFocus="if(this.value =='Gamer Look Up') this.value=''" /> 
<a href="#" onClick="document.getElementById('search-form').submit()">Submit</a> </div> 
</form> 
+0

왜 양식의 작업에서이를 수행하려고합니까? JavaScript를 사용하여 양식을 제출하고 있습니다. 사용자가 "제출"링크를 클릭 할 때 그 값을 찾아 단순히 $ .facebox를 호출하는 것이 더 쉽지 않을까요? 어쩌면 나는 오해했다. – sdleihssirhc

+0

그래, 문제는 facebox가 메인 브라우저의 값을 찾고 있다는 것입니다. 내가 facebox에 값을 전달하려고 해요 –

답변

0

나는 당신의 형태와 facebox 사이에 무슨 일이 일어나고 있는지 전혀 모르겠지만, 우선, 당신은 인라인 이벤트 핸들러에서 모든 행동 코드를 이동하려고한다 :

$(document).ready(function(){ 

    $('#search-form').submit(function(e){ 
    e.preventDefault(); // suppress default form handler 
    $.facebox({...}); // add your code to presumably handle submission 
    }); 

    $('#name') // a confusing ID, especially since you should add a "name" attr 
    .focus(function(){ if(this.value == 'Look up') this.value = ''; }) 
    .blur(function(){ if(this.value == '') this.value = 'Look up'; }); 

    $('a#your-link-id').click(function(e){ 
    e.preventDefault(); // suppress default link behavior 
    $('#search-form').submit(); 
    }); 

}); 

귀하의 HTML을 당신이 당신의 <input> 필드에 name을 추가해야

<form action="/some_reasonable_default" id="search-form" method="post"> 
    <div class="wrapper"> 
    <input type="text" id="name" value="Look Up" name="some-name" /> 
    <a href="#" id="your-link-id">Submit</a> 
    </div> 
</form> 

참고 : 다음에 간단하게 할 수 있습니다. 페이지의 자연스러운 동작 (JavaScript 코드 무시)을 사용하여 양식을 제출할 수있는 기능이 있으면 namevalue이 처리기 스크립트에서 수신하게됩니다. 또한 명확한 선택을 쉽게하기 위해 위의 예와 같이 제출 링크에 ID를 추가해야합니다.

+0

고마워,하지만 여전히 작동하지 않습니다. 그 값은 facebox –

+0

으로 전송되지 않습니다. if (isset ($ _ GET [ 'glname'])) { $ name = $ _ GET [ 'glname']; } \t \t 수신 페이지에 –

+0

분명히 우리가 보지 못하는 코드가 있습니다. 하지만 'GET'또는 'POST'를 통해 수신 페이지에 제출 하시겠습니까? 'POST'이면, 물론 $ _POST [ 'varname']'에 제출 된 데이터를 찾을 수 있습니다. –