2014-04-10 2 views
0

저장, 인쇄 및 세로 인쇄 기능이있는 MVC4 응용 프로그램이 있습니다. 아래의 은 이벤트가있는 세 개의 버튼에 대한 html 코드입니다. 나는 인쇄 세로/가로 버튼, SaveDetails의 컨트롤러 메소드가 트리거지고를 클릭하지 않고 직접 저장을 클릭하면 클릭에클릭 이벤트로 다른 버튼 이벤트 발생

<input type="submit" id="btnSave" value="Save" class="button-new red" onclick=" return SaveDetails();" style="width: 20px;" /> 

<input type="submit" id="btnExportLandscape" value="Print Landscape" onclick="return ExportForPrint(1);" class="button-new red" style="width: 110px;" /> 

<input type="submit" id="btnExportPortrait" value="Print Portrait" onclick="return ExportForPrint(2);" class="button-new red" style="width: 90px;" /> 

나는 자바 스크립트 함수를

function SaveDetails() 
{ 
     .... 
     if() 
     return true 
} 

function ExportForPrint(type) 
{ 
     if(type=1) 
     document.formCreateDetails.action="CreateDetails/ExportLandscape"; //Call to controller method 
     else if (type=2) 
     document.formCreateDetails.action="CreateDetails/ExportPortrait"; 
} 

있습니다. 그러나 인쇄 세로/가로를 클릭 한 다음 저장을 클릭하면 여전히 세로/세로 인쇄 이벤트가 트리거됩니다. 우리는이

$(document).ready(function(){ 
    $("#btnSave").on('click',function(){ 
     // Do some thing..... 
    }); 

    $("#btnExportLandscape").on('click',function(){ 
     // Do some thing..... 
    }); 

    $("#btnExportPortrait").on('click',function(){ 
     // Do some thing..... 
    }); 
}); 
+0

'type = 1'을 (type == 1)로 변경하고 'type = 2'를 (를) 변경하십시오. –

+0

@amit 나는 모바일에서 응답으로 ur 코멘트를 참조하십시오. –

답변

0

감사합니다.

실제 문제는 SaveDetails() 메서드에서 수행하지 않는 관련 컨트롤러 메서드를 인쇄하기 위해 문서 작업을 할당했기 때문에 발생했습니다.

document.formCreateDetails.action="CreateDetails/ExportLandscape"; 

또는

document.formCreateDetails.action="CreateDetails/ExportPortrait"; 

이벤트를 저장하고이 일에 대해 다음과 같이 내가 다시 쓴 내 코드입니다.

function SaveDetails() 
{ 
    .... 
    if() 
    { 
    document.formCreateDetails.action="CreateDetails/Index"; 
    return true 
    } 
} 

모든 답변 주셔서 감사합니다. 정말 감사드립니다. 해피 코딩 ....

1

사용 JQuery와 아이디 선택 당신은 상태를 확인하기 위해 (두 번 같음)을 비교 한 연산자를 사용합니다. 당신이 게시물에 하나의 조치를 갈 수

0

처럼 쓸 수

+0

그냥 코드 스 니펫, 예 = 비교하려면 == 사용하고 있습니다 – Chethan

+0

그게 좋지 않습니다. –

0

이 같은 버튼 값을 제출 확인할 수 있습니다

보기 :

<input type="submit" id="btnSave" name="Save" value="Save" class="button-new red" onclick=" return SaveDetails();" style="width: 20px;" /> 

<input type="submit" id="btnExportLandscape" name="Save" value="Print Landscape" onclick="return ExportForPrint(1);" class="button-new red" style="width: 110px;" /> 

<input type="submit" id="btnExportPortrait" name="Save" value="Print Portrait" onclick="return ExportForPrint(2);" class="button-new red" style="width: 90px;" /> 

컨트롤러 : 귀하의 답변

[HttpPost] 
public ActionResult Save(FormCollection form) 
{ 

if(form["Save"].ToString() == "Print Landscape") 
{ 
// do landscape work 
} 
else if(form["Save"].ToString() == "Save") 
{ 
// save 
} 
else if(form["Save"].ToString() == "Print Portrait") 
{ 
} 
}