我需要知道如何在单击提交按钮之前停用两个按钮。我正在使用一个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óxima cita : </b>
Ejemplo: En 5 semanas ó 30 dí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中的脚本:
答案 0 :(得分:0)
我对你的问题感到有些困惑。您的脚本只执行以下操作:
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)">
这里的问题是这两个链接都具有相同的ID(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>
答案 1 :(得分: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);
,现在我不知道如何解决它......
最后我想在点击时禁用保存按钮...但我不知道怎么做...
无论如何,如果这段代码可以帮助你,那就是我的猜测。
抱歉我的英语不好,但总是说我不是母语,我尽力用英语解释我亲切的问候!
安德烈