2013-08-07 2 views
0

Мне нужно знать, как отключить две кнопки до тех пор, пока не будет нажата кнопка отправки. Я использую код javascript, который деактивирует два других, но не работает.деактивируйте две кнопки до тех пор, пока не будет нажата кнопка отправки.

здесь моя форма:

<form name="receta" id="receta" method="post"> 
    <div class="row-fluid grid"> 
     <div class="span4"> 
      <label><b>Lugar: </b></label> 
      <input type="text" class="input-block-level" value="" name="lugar" /> 
     </div> 
     <div class="span4"> 
      <label><b>Nombre : </b></label> 
      <input type="text" class="input-block-level" value="" name="nombre" /> 
     </div> 
     <div class="span4"> 
      <label><b>Edad : </b></label> 
      <input type="text" class="span4" value="" name="edad" /> 
     </div> 
    </div> 
    <div class="row-fluid grid"> 
     <div class="span4"> 
      <b>Pr&oacute;xima cita : </b> 
      Ejemplo: En 5 semanas &oacute; 30 d&iacute;as..... 
       <input class="input-block-level" name="receta" maxlength="50" value="" />  
     </div> 
    </div> 
<div class="row-fluid grid"> 
     <div class="span4"> 
    <button class="btn btn-inverse" type="submit" name="enviar" id="boton1" onclick="boton(this)"> 
     <i class="icon icon-save icon-white"></i> 
     <?php echo $translate->__('Save Prescription'); ?> 
    </button> 
</div> 
<div class="span4"> 
    <a class="btn btn-primary" href="receta_edit.php" type="button" id="boton2" onclick="boton(this)" > 
     <i class="icon icon-edit icon-white"></i> 
     <?php echo $translate->__('Edit Previous Prescription'); ?> 
    </a> 
</div> 
<div class="span4"> 
    <a class="btn btn-info" href="imprecetahoy.php" type="button" id="boton2" target="popup" onClick="window.open(this.href, this.target, 'scrollbars=yes,toolbar=no,menubar=no,status=no,width=parent,height=parent'); return false;" onclick="boton(this)"> 
    <i class=" icon-print icon-white"></i> 
    <?php echo $translate->__('View/Print last Prescription'); ?> 
    </a> 
</div> 
</div> 
</form> 

и это Javascript я пытаюсь использовать:

<script> 
    function boton (obj) 
    { 
     if(obj.value=='boton 1') 
     { document.getElementById('boton1').disabled="false"; 
     } 
     if(obj.value=='boton 2') 
     { document.getElementById('boton2').disabled="true"; 
     } 
    } 
</script> 

здесь сценарий в jsfiddle:

http://jsfiddle.net/HDx8E/

+0

В этом примере есть только одна кнопка. Вы хотите отключить ссылки (Edit/Print), пока не будет нажата кнопка «Сохранить»? – MikeTheLiar

+0

да, что мне нужно –

ответ

0

я, наконец, нашел код, который работает для меня. вот код:

<div class="span4"> 
     <button class="positive btn btn-inverse" type="submit" id="enviar" name="enviar" onclick="document.getElementById('edit').disabled=false;document.getElementById('imp').disabled=false;button(this);"> 
      <i class="icon icon-save icon-white"></i> 
      <?php echo $translate->__('Save Prescription'); ?> 
     </button> 
    </div> 
    <div class="span4"> 
     <button class="negative btn btn-primary" onclick="location.href='receta_edit.php" id="edit" disabled > 
      <i class="icon icon-edit icon-white"></i> 
      <?php echo $translate->__('Edit Previous Prescription'); ?> 
     </button> 
    </div> 
    <div class="span4"> 
     <button class="negative btn btn-info" onClick="myPopup()" id="imp" disabled > 
      <i class=" icon-print icon-white"></i> 
      <?php echo $translate->__('View/Print last Prescription'); ?> 
     </button> 
    </div> 
</div> 

прямо сейчас с этим кодом кнопки (редактирования и печати) активируются, пока кнопка сохранения не будет нажата кнопка сохранения сохранения данных в форме, а остальные две кнопки показывают данные, которые уже сохранена, только ошибка заключается в следующем:

ReferenceError: button is not defined 

и ошибка, когда была нажата кнопка сохранения в свойстве OnClick: onclick="document.getElementById('edit').disabled=false;document.getElementById('imp').disabled=false;button(this);"

эта часть является «не определен» button(this);, прямо сейчас я не» t знать, как исправить это ...

напоследок я хотел бы отключить кнопку Сохранить, когда была нажата ... но я не знаю, как это сделать ...

в любом случае, если этот код поможет вам, моя догадка.

жаль мой бедный английский, но, как всегда, я сказал, это не мой родной язык, и я пытался сделать все возможное в объяснить мне по-английски

С уважением!

Andres

0

I Я немного смущен вашим вопросом. Ваш скрипт выполняет только следующие действия:

  • если щелкнуть boton1, отключите его.
  • если щелкнут boton2, включил его.

Другими словами, при нажатии кнопки отправки вы можете отключить кнопку отправки. Это не имеет никакого отношения к твоему намерению, насколько я понимаю.

Простите меня; Я не понимаю испанский. Однако кажется, что вы хотите, чтобы следующие два элемента были деактивированы до тех пор, пока не будет щелкнут ваш submit (который составляет boton1).

<a class="btn btn-primary" href="receta_edit.php" id="boton2" onclick="boton(this)" > 

<a class="btn btn-info" href="imprecetahoy.php" target="popup" 
    onClick="window.open(this.href, this.target, 'scrollbars=yes,toolbar=no, 
    menubar=no,status=no,width=parent,height=parent'); return false;" 
    id="boton2" onclick="boton(this)"> 

Проблема здесь состоит в том, что обе эти ссылки имеют одинаковый идентификатор (boton2). Вы должны переименовать их в уникальные и, желательно, более значимые, например receta_edit_link и imprecetahoy_link.

Затем, вы можете отключить оба этих при загрузке страницы и только включить их, когда кнопка нажата представить что-то вроде следующего:

<script> 
    function boton(obj) { 
     if(obj.value == 'boton1') { 
      document.getElementById('receta_edit_link').disabled='true'; 
      document.getElementById('imprecetahoy_link').disabled='true'; 
     } 
    } 
</script> 
+0

не работает ... всегда я могу нажать –

Смежные вопросы