문제

I 표시하기 위해 필요한 확인을 대화 상자에 이미지를 클릭합니다.코드에서"onclick"섹션의 이미지가 있어야만 실행된 경우 jquery 확인을 대화 반환되는 사실이다.

이 시점에서 때 사용자를 클릭$(".submit_image")-대화상자가 표시됩니다,그러나 형태로도 제출됩니다.

로직해야에 대해 동일한 모두 jquery.경고 플러그인이나 자바스크립트를 확인합니다.

<form name="myform">
<img class="submit_image" onclick="myform.field1.value='1';myform.field1.value='2'; myform.submit();">
</form>


$(document).ready(function(){
   // catch submit 
   $(".submit_image").click(function(e){
       jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
      return r;
       });
   });
});
도움이 되었습니까?

해결책 3

내가 찾 내 문제에 대한 해결책을하지만,일부 변화에서 기존의 코드는 아직도 실행될 필요가 있습니다.

Html 배치 내부 이미지의 앵커 태그 href=하는 것에 있었던 이미지 onclick 이벤트입니다.

<form name="myform">
<a href="javascript: myform.field1.value='1';myform.field2.value='2'; myform.submit();" class="submit_image_link"><img src="..."></a>
</form>

추가 e.preventDefault()메소드를 방지하 기본 이벤트에 대한 앵커는 다음과 같은 링크하거나 자바스크립트 href 섹션입니다.제가 이해하기로는,"return false="또는 preventDefault()일하지 않은 나를 위해서는 나의 원래 코드이기 때문에,"img"태그에 있는 기본다.

$(document).ready(function(){
   // catch submit 
   $(".submit_image_link").click(function(e){
    e.preventDefault();
    jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
        if (r) location.href = $(".submit_image_link").attr('href');
    });
   });
});

다른 팁

return jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
  return r;
});

어쩌면?jQuery 필요로 돌아가"false"습니다.클릭 기능을 중지하는 기본 작업,그리고 지금 당신은 반환하지 않는 아무것도에서는 기능입니다.

*편집*

나는 그냥 보면서 jConfirm 고 있기 때문에 그것이 어떻게 작업(특히지 않기 때문에 아무것도 반환;할 수 있는 값을 반환합을 통해 그것의 콜백)는 것이 불가능을 사용하고 당신이 원하는 방식으로.무엇을 해야 하는 대신은 항상 false 를 반환에서 당신의 onclick 처리기,그리고 다음에 jConfirm 콜백을 수동으로 호출 양식을 제출.

예제:

$(document).ready(function(){
  // catch submit 
  $(".submit_image").click(function(e){
    jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
      // If they confirmed, manually trigger a form submission
      if (r) $(".submit_image").parents("FORM").submit();
    });
    // Always return false here since we don't know what jConfirm is going to do
    return false;
  });
});

당신이 당신의 이벤트입니다.중 하나에 대한 이미지의 onclick 전화 형태의 onsubmit,다음 형태의 onsubmit,이는 적절한 위치에 대한'false'반환하를 정지하는 양식을 제출.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top