2016-07-14 3 views
0

Это моя форма:, когда я нажимаю на флажок, чем кнопки ввода будет кликабельна

<form name="frmUser" method="post" action=""> 
    <input type="button" name="update" value="Update Booking" id="Update_Booking" onClick="setUpdateAction();" /> 
    <input type="button" name="delete" value="Cancel Booking" onClick="setDeleteAction();" /> 
    <input type="checkbox" name="booking[]" id="Booking" value="<?php echo $row['id'];?>" /> 
</form> 

Это код сценария:

function setUpdateAction() { 
    document.frmUser.action = "update_booking_view.php"; 
    document.frmUser.submit(); 
} 

function setDeleteAction() { 
    if (confirm("Are you sure want to delete these rows?")) { 
     document.frmUser.action = "delete_booking_view.php"; 
     document.frmUser.submit(); 
    } 
} 
+0

Есть причина, вы не можете использовать jQuery здесь? –

ответ

0

Вы можете попробовать следующее:

PS: вам необходимо предотвратить поведение по умолчанию нажатия кнопки, которое отправляет форму.

JS:

function setUpdateAction(event) { 
    event.preventDefault(); 
    document.frmUser.action = "update_booking_view.php"; 
    document.frmUser.submit(); 
} 

function setDeleteAction(event) { 
    event.preventDefault(); 
    if (confirm("Are you sure want to delete these rows?")) { 
     document.frmUser.action = "delete_booking_view.php"; 
     document.frmUser.submit(); 
    } 
} 

function toggleBtns(checkbox) { 
    checkbox.form.update.disabled = checkbox.form.delete.disabled = !checkbox.checked; 
} 

HTML:

<form name="frmUser" method="post" action=""> 
    <input type="button" disabled name="update" value="Update Booking" id="Update_Booking" onClick="setUpdateAction(event);" /> 
    <input type="button" disabled name="delete" value="Cancel Booking" onClick="setDeleteAction(event);" /> 
    <input type="checkbox" name="booking[]" onchange="toggleBtns(this)" id="Booking" value="<?php echo $row['id'];?>" /> 
</form> 

Демо:https://jsfiddle.net/iRbouh/jjhm2mnr/2/

+0

thanx .. но мне нужна дополнительная помощь. что мне делать, если я не хочу, чтобы флажок по умолчанию отмечен –

0

Вам нужно добавить атрибут инвалида на две кнопки на начальном этапе.

Как только вы нажмете на этот флажок, проверьте его. Если флажок установлен, кнопка становится интерактивной. Если флажок снят, кнопка будет отключена.

Измените HTML, добавив атрибут: отключил

<input type="button" name="update" value="Update Booking" id="Update_Booking" onClick="setUpdateAction();" disabled /> 
    <input type="button" name="delete" value="Cancel Booking" onClick="setDeleteAction();" disabled /> 

Тогда ваш Jquery:

$("#Booking").on("click", function() { 
     if (this.checked == true) { 
      $("input[type='button']").attr('disabled', false); 
     } else { 
      $("input[type='button']").attr('disabled', true); 
     } 
    }); 

Вы можете обратиться к этому JS Fiddle: https://jsfiddle.net/ythw3sv6/

+0

Я пробую ваш код, но несколько раз кнопки будут кликабельными, а иногда и нет. –

+0

Кажется, что все работает отлично в скрипке. –