所以我有一个父窗口和子窗口 父窗口中有一些表单,我计划通过从mysql数据库中检索的子窗口传递的值来填充表单 但是,每次打开子窗口的按钮都会点击它触发2事件
首先,它打开子窗口我的问题是第二次事件发生的原因?我没有在onclick事件中提交任何代码(在父窗口上)
这是我在父窗口中的代码:
<script language="javascript">
function openWindow() {
window.open("blabla.php","_blank","height=600,width=400, status=yes,toolbar=no,menubar=no,location=no");
}
</script>
<div class="form-group">
<label>ID USER</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-pencil"></span></span>
<input type="text" readonly class="form-control" id='idk' name='idk' placeholder="Submit ID User" required="required" />
<span class="input-group-addon"><button onClick="javascript:openWindow();">Select</button></span>
</div>
</div>
答案 0 :(得分:0)
如果没有更多信息,我无法回答您的问题。当您调用点击功能时,您需要了解正在触发的事件,以便将事件传递给您的函数。然后,您可以查看事件对象并确定导致第二个事件被触发的原因。为此,将事件对象传递给您的函数,然后您可以检查它。
<script language="javascript">
function openWindow(e) {
console.log(e);
window.open("blabla.php","_blank","height=600,width=400,
status=yes,toolbar=no,menubar=no,location=no");
}
</script>
<div class="form-group">
<label>ID USER</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-pencil"></span></span>
<input type="text" readonly class="form-control" id='idk' name='idk' placeholder="Submit ID User" required="required" />
<span class="input-group-addon"><button onClick="javascript:openWindow(event);">Select</button></span>
</div>
</div>
根据您提供的有限信息,我并不确切知道您要完成的任务,所以这是我能帮到您的最佳方式。如果你使用bootstrap,我发现你正在使用一些bootstrap类。 Bootstrap可能会在点击时提交您的表单。使用e.preventDefault()可能会停止此行为。