Javascript 如果填写了某个输入字段(但未提交),如何仅显示div?
html编码相对较新,javascript非常新。在这个页面上,我不希望在填写tripID之前(但表单尚未提交)向编辑发送电子邮件的选项变得可见。以下是迄今为止尚未添加该选项的表单:Javascript 如果填写了某个输入字段(但未提交),如何仅显示div?,javascript,html,show-hide,Javascript,Html,Show Hide,html编码相对较新,javascript非常新。在这个页面上,我不希望在填写tripID之前(但表单尚未提交)向编辑发送电子邮件的选项变得可见。以下是迄今为止尚未添加该选项的表单: TripID: 端口: 电子邮件编辑器? 主题: 在这里解释任何包装或标签错误。。。 函数copyTextValue(bf){ 如果(bf.已检查){ document.getElementById('div').style.display='block'; var atext='冻结的样本错误通知:'+d
TripID:
端口:
电子邮件编辑器?
主题:
在这里解释任何包装或标签错误。。。
函数copyTextValue(bf){
如果(bf.已检查){
document.getElementById('div').style.display='block';
var atext='冻结的样本错误通知:'+document.getElementById('atripid').value;
}否则{
document.getElementById('div').style.display='none';
var atext=“”;
}
document.getElementById('AsObject')。value=atext
}
您可以使用纯javascript执行以下操作:
<input type="atripid" id="atripid" value="" onkeyup="keyupFunction()">
并定义keyupFunction()
请参见在JSFIDLE上尝试的代码要求您导入jquery.js文件。你想做什么的另一种方法是
<input type='text' id='atripid' name='atripid' size='6' maxlength='6' onkeyup="toggleCheckBox(this)" />
<input type='checkbox' name='acheck' id="acheckbox" style="display:none;" onchange='copyTextValue(this);'/>
问题在于
.keyup()
方法,该方法在不同浏览器中不一致,并且不考虑其他用户输入方式。您更愿意使用立即调用的函数表达式(IIFE),该表达式将检测相关输入字段的属性更改
,然后在满足条件时触发所需事件。但为了简单起见,以及我对IIFE语法不够精通的事实,只需将一些事件绑定到输入字段,如下所示:
$(“#atripid”)。在(“键控更改属性更改输入粘贴”上,(函数(e){
if($(this).val()=“”){
$(“#acheckbox”).hide();
}否则{
$(“#acheckbox”).show();
}
}));代码>
#acheckbox{
显示:无;
}
tripid:
端口:
这是显示电子邮件选项(主题和文本框)的地方。
看起来您在第二个代码段中使用了jquery,您是否在原始代码中包含了jquery?老实说,我是一个新手,我没有意识到有什么不同。有没有一种使用javascript的方法?在html中添加一个
。。最好在
标记之间
function toggleCheckBox(element) {
if(element.value=='') {
document.getElementById('acheckbox').style.display = 'none';
}
else {
document.getElementById('acheckbox').style.display = 'block';
}
}