2013-11-21 3 views
0

Как ограничить клик по ссылке href на основе условия флажка (ссылка должна работать, только если отмечена)?Как ограничить доступ к ссылке href на основе состояния флажка?

<td><input name="checkbox[]" type="checkbox" id="checkbox[]" value="' . $row['id'] . '"'.($row['pr'] == ""?"disabled ":"").' style="cursor:pointer;" class="checkbox"></td> 

<a class="button" href="javascript:document.forms[0].submit();" onclick="f1.action='editpr.php'; return true;"> 
<span><b>Edit Purchase Request</b></span></a> 

<a class="button" href="javascript:document.forms[0].submit();"><span><b>Remove Purchase Request</b></span></a> 

У меня действительно возникли проблемы с этим. Помощь

ответ

1

Удалите встраиваемые обработчик кликов в пользу обработчика JQuery нажмите затем в чеке обработчика для условия

<a class="button submit"><span><b>Edit Purchase Request</b></span></a> 
<a class="button remove"><span><b>Remove Purchase Request</b></span></a> 

затем

jQuery(function ($) { 
    $('a.button.submit, a.button.remove').click(function() { 
     if ($('input[name="checkbox[]"]:checked').length == 0) { 
      return; 
     } 

     var frm = document.f1; 
     if($(this).hasClass('submit')){ 
      frm.action = 'editpr.php'; 
     } 
     frm.submit(); 
    }) 
}) 

Примечание. Похоже, что все элементы флажка имеют идентификатор checkbox[], который не разрешен как идентификатор элемента, должен быть уникальным

+0

проблема в том, что мне нужно установить флажок [] на мой php-процесс. – surname

+0

@papaosurname так ... это должно работать ... Я надеюсь, что 'f1' - это имя формы, содержащей флажки –

+0

да f1 - это имя моей формы. И это работает. Большой ! – surname

0

Вот jsfiddle link

//This is for set the href on page load 
settingHref(); 
//This is for set the herf on chage of checkbox 
$('#checkbox').change(function() { 
    settingHref(); 
}); 
function settingHref() { 
    if ($('#checkbox').is(":checked")) { 
     $('.button').attr('href', 'javascript:document.forms[0].submit();'); 
    } 
    else { 
     $('.button').attr('href', 'javascript: void(0)'); 
    } 
} 
Смежные вопросы