2016-12-12 2 views
-1

나는 유익한 텍스트를 표시하는 jconfirm 창을 가지고 있습니다. 해당 jconfirm 창에 확인란을 추가하고 싶습니다. 체크/체크되지 않은 값을 기준으로 대상 URL에 값이 추가됩니다 (결국 장고로 처리됩니다).jconfirm가 호출 될 때 체크 박스의 값을 잃어 버림

문제는 jconfirm 페이지에 표시되는 html 코드, 나는 체크 박스의 값을 잃어 버린다.

$('#credit_checkbox').change(function(){ 
$('#hiddenInput').val(this.checked); 
console.log($('#hiddenInput')); 
}); 

$(".popup-action").click(function(e) { 
    var target = this.href; 
    e.preventDefault(); 
    info = "<br/><br/><div> What will happen:<ul class='log payback' style='text-align:left;'><li><input id='credit_checkbox' type='checkbox' />Wanna do this?<br /><input id='hiddenInput' value=''>"; //Probably missed a quote here 

    jConfirm("{% trans 'Set status to ' %}" + $(this).html() + " ?"+ info, "Confirmation", function (r) { 
     if ($('#credit_checkbox').is(':checked')){ 
       target = target + "/True"; 
     } 
     if (r) { 
      console.log($('#hiddenInput').val()); 
       $.getJSON(target,function(json) {codecode} 
     ); 
    } 
}); 
+0

'info' 변수에 구문 오류가 있습니다. 누락 된 큰 따옴표. 'info = "'Lain이 소스 코드를 편집 했으므로'info' 변수의 문자열 끝에';'가 여전히 남아 있습니다. – NewToJS

+1

여기에 게시하기 전에 콘솔을 확인한 다음 여기에 오류가 올 것입니다. – Ionut

답변

0

다른 사람이 지적한 것처럼 구문 오류가 아니라면 값을 읽기 전에 확인란이 삭제 되었기 때문입니다.

<input id="hiddenInput" value=""> 

그리고 당신은 #에서 그 값을 읽을 수 있습니다 : 다음

$("#credit_checkbox").change(function(){ 
    $("#hiddenInput").val(this.checked); 
}); 

당신이 그 값을 저장합니다 HTML의 숨겨진 입력을 만듭니다 그 체크 박스에 이벤트를 부착

시도 언제든지 hiddenInput.

+0

체크 박스에 변경 이벤트를 추가하려고했지만 이벤트가 발생하면 실행되지 않습니다. 뭔가를 놓치고 볼 수없는 경우가 있습니다. 제안에 따라 코드를 업데이트했습니다. – user3253067

관련 문제