2012-03-01 2 views
0

HTML의 텍스트 필드를 변경하면 양식을 제출하려고합니다.텍스트 형식 필드 제출 OnChange

<form name="editAgendaItem19" id="editAgendaItem19" method="post" action="./?module=meetings&preload=edit&function=editAgendaItem&agendaitem=19"> 
<table width="100%" border=0> 
<tr><td width="20px">1</td><td><input type="text" value="" name="agendaItemTitle19" onChange="javascript:document.forms['editAgendaItem19'].submit()" /></td> 
... 

로 평가

echo("<form name=\"editAgendaItem" . $this->Id . "\" id=\"editAgendaItem" . $this->Id . "\" method=\"post\" action=\"./?module=meetings&preload=edit&function=editAgendaItem&agendaitem=" . $this->Id . "\">\n"); 
echo("<table width=\"100%\" border=0>\n"); 
echo("<tr><td width=\"20px\">" . $this->Index . "</td><td><input type=\"text\" value=\"" . $this->Title . "\" name=\"agendaItemTitle" . $this->Id . "\" onChange=\"javascript:document.forms['editAgendaItem" . $this->Id . "'].submit();\" />"); 
echo("</td>\n"); 
... 

하지만 더 중요한 것은

<form name="editAgendaItem19" id="editAgendaItem19" method="post" action="..."> 
<input type="text" value="" name="agendaItemTitle19" onChange="javascript:document.forms['editAgendaItem19'].submit()" /> 
... 
  • 결국 태그로 종료 : 현재, 내 코드는 다음과 같이 보인다. 내 문제는 필드를 수정하고 포커스를 놓으면 양식이 제출되지 않는다는 것입니다.

미리 도움을 청하십시오.

편집 : 나는 또한 인라인 코드 대신 OnChange 이벤트에이 방법을 사용하려고했습니다

:

<script type="text/javascript"> 
function submitForm(FormName) 
{ 
    document.forms[FormName].submit(); 
} 
</script> 

편집 :

다음 코드를 사용하는 제안을 툭 :

<script> 
$(document).ready(function(){ 
    $('#agendaItemTitle24').live('blur',function() 
     $('#editAgendaItem24').submit(); 
    }); 
});​ 

</script> 

내 머리 속에는

<form name="editAgendaItem24" id="editAgendaItem24" method="post" action="..."> 
<input type="text" value="" name="agendaItemTitle24" id="agendaItemTitle24" /> 
</form> 

내 콘텐츠. 아직 주사위가 없습니다.

+0

당신이 당신의 자바 스크립트 콘솔에서 오류 또는 경고를 받고 있습니까? 그렇다면 여기에 게시 할 수 있습니까? – octern

+0

나는 옥타 네가 아니야. – DigitalJedi805

+0

아니요, 저는 8 각형입니다. 그래서 "- octern"이 내 의견 끝에 나타납니다. – octern

답변

1

당신의 HTML은 다음과 같이 수 :

<form name="myForm" id="myForm" method="post" action="..."> 
<input type="text" value="" name="myInput" id="myInput"/> 

지금 jQuery를 사용

<script type="text/javascript"> 
$(document).ready(function(){ 
    $('#myInput').live('blur',function(){ 
     $('#myForm').submit(); 
    }); 
});​ 
</script> 

이 내 jsFiddle입니다 : http://jsfiddle.net/mtwLf/1/

+0

나는 이것을 시도하고 다시 게시 할 것이다. 감사. – DigitalJedi805

+0

이 결과를 얻은 결과가 없습니다. 양식이 제출되지 않습니다. – DigitalJedi805

+0

틀린 @ DigitalJedi805; 신중하게 jsFiddle 링크를 살펴보십시오. 텍스트 상자에 커서를 놓은 다음 밖으로 나가십시오. 이 양식은 행동을 시도 할 것입니다 –

0

저는 자바 스크립트를 별도의 파일로 분리하고 준비된/준비된 문서로 처리하기 시작합니다. 내 생각에 필자는 사람들이 요즘 인라인 자바 스크립트를 쓰는 것이 좋지 않다고 말한 것으로 생각합니다.

누구나 그 생각을 가지고 있습니까?

+0

글쎄,이 작업을 수행해야하는 submitForm 메서드가 있습니다. 실제로 양식을 보내지는 않습니다. 위의 코드를 편집하여 보여 드리겠습니다. – DigitalJedi805

2

이 시도 :

onkeyup="javascript:document.forms['editAgendaItem19'].submit()" 

당신이 다른 곳을 클릭하여 포커스를 제거하는 경우에만 작동 onchange를 기능이

+0

그게 의도입니다. Snag - 사용자가 키를 친 때마다 제출하고 싶지는 않습니다. 이는 'Call to Order'와 같은 의제 항목 제목을 2 분 과정으로 입력하게 만들 것입니다. 그러나 제안에 감사드립니다. – DigitalJedi805

1

시도 onBlur 이벤트를 사용하는 대신 onChange

+0

제안 해 주셔서 감사합니다. 위의 경우 작동하지 않으면이 시도 할 수 있습니다. – DigitalJedi805

+0

시도해 보니 - 작동하지 않는 것 같습니다. 감사. – DigitalJedi805

+0

'흐림 '동작이 발생 했습니까? –

관련 문제