2014-12-19 4 views
0

내가 추상적으로 사용자로부터 파일 찾아보기 대화를 원하는 만 같은, 업로드 하나 개의 버튼을 보여 클릭하지 않고 :트리거 onserverclick 물리적 버튼

<input type="button" id="uploadFile" value="Upload" /> 
<div class="hidden"> 
    <form id="uploadFileForm" method="post" enctype="multipart/form-data"> 
     <input type="file" id="browseForFiles" /> 
     <input type="button" id="submitFile" value="Submit File" runat="server" 
       onclick="return true;" 
       onserverclick="SubmitFile_Click" /> 
    </form> 
</div> 

$("#uploadFile").click(function() { 
    // trigger hidden file dialog 
    $("#browseForFiles").click(); // works 
}); 

$("#browseForFiles").change(function() { 
    $("#submitFile").click(); // doesn't work; doesn't call onserverclick 
}); 

가 물리적으로 클릭 submitFile 버튼이 제대로 작동하고 서버 쪽 메서드를 호출하지만 실제 서버 쪽 단추를 숨기려면이 단추를 실제로 클릭 할 수 없습니다. jQuery/Javascript에서 실제 클릭을 어떻게 가짜로 만드나요?

편집 : 나는 또한 시도
:

<input type="submit" id="submitFile" value="Submit File" runat="server" 
     onclick="return true;" 
     onserverclick="SubmitFile_Click" /> 

$("#uploadFileForm").submit(); // doesn't work either 
+0

아마도 $ ('# submitFile') [0] .click();을 (를) 사용해보십시오. ASP 사용자가 아닙니다. –

+0

@ A.Wolff : 감사합니다! 내 코드를 수정 한 후에도 제안이 효과가있었습니다. – SNag

답변

0

$("input[id$='submitFile']").click(); 작품입니다.

일반 HTML 컨트롤이 사용 되더라도 ASP.NET이 요소의 ID를 ctl00_PlaceHolderMain_submitFile과 같은 것으로 바꾸 었다는 것을 몰랐습니다!

$("input[id$='submitFile']")[0].click();도 마찬가지입니다.

0

는 당신이 봤어?

$('#uploadFileForm').submit() 
+0

나는 그랬다! 내 업데이트를 확인하십시오. – SNag