2010-02-25 33 views
0

문제는 내가 get.info()를 사용하여 Result.lasso에 대한 ajax 호출을 만들고 id가 'test'인 div에 응답을 붙여 넣습니다. sendForm() 함수를 사용할 수 없습니다. 내가 get_info()를 호출하는 페이지.Ajax 응답 스크립트로드 문제

다른 버전의 jQuery를 사용해 보았습니다. jQuery의 상위 버전을 사용하는 동안 문제가 발생했습니다.

는 는

missing } in XML expression 
[Break on this error] alert('hi');\n 
test.lasso (line 3) 
sendForm is not defined 
[Break on this error] sendForm(); 

get_info() 함수가 정의

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"></script> 
<SCRIPT> 
function get_info() 
{ 
    $.ajax({url: "Result.lasso", context: document.body, success: function(response){ 
    document.getElementById('test').innerHTML = response ;},dataType:"script"}); 
} 
</SCRIPT> 

다음과 같이 더 높은 버전 에러가

Result.lasso의 코드

[Content_Type: 'text/html; charset=UTF-8'] 
<script type="text/javascript"> 
    function sendForm() 
    { 
     alert('hi'); 
    } 
</script> 
[Date] 
form name= "abc" method = "get" action = "abcd.lasso"> 
    input type ="text" name = "element1"/> 
    input type = "button" value="Click" onClick = "javascript: sendForm();"/> 
</form> 
다음된다

로서

이 문제를

감사를 해결하는 저를 도와주세요, 인 Rajesh Konatham

답변

0
귀하의 형식은 꽤 엉망, 그래서 오해 할 수 있지만 스크립트 태그를 HTML을로드하는 것 같은데

당신 처형 되길 원하니?

document.getElementById('test').innerHTML = response; 대신 $('#test').html(response);을 시도하십시오. 또한 스크립트가 아닌 dataType:"html"이어야합니다.

+0

에 양식 태그에 누락 된 개방 <의 브라우저 번역 몇 가지 이상한에 문제가 될 수 있습니다) .html (응답) 이전 버전에서 작동하는 jquery의 상위 버전에서 작동하지 않는 이유는 무엇입니까? – user377435

+0

jQuery의 이전 버전에서 왜 작동하는지 저는 솔직하게 모릅니다. innerHTML은 여러 브라우저에서 스크립트를 실행할 때 신뢰할 수 없으므로 이전 버전이 안정적으로 작동한다면 놀랄 것입니다. – noah

0

당신은 또한 그것은 $ ('# 테스트'를 사용하여 작업 응답 주셔서 감사합니다 @noah 때문에 Result.lasso