在javascript中第一次更改时未触发onchange事件? 选择一个用户
从在javascript中第一次更改时未触发onchange事件? 选择一个用户,javascript,php,Javascript,Php,从选择框中删除onchange。并使用以下内容更改您的JS: <form class="uk-form-stacked"> <label class="uk-form-label" for="kUI_dropdown_basic_select">Select a user</label> <select id="kUI_dropdown_basic_select" class="uk-form-width-medium" onchange
选择
框中删除onchange
。并使用以下内容更改您的JS:
<form class="uk-form-stacked">
<label class="uk-form-label" for="kUI_dropdown_basic_select">Select a user</label>
<select id="kUI_dropdown_basic_select" class="uk-form-width-medium" onchange="getIPL();">
<?php foreach ($response->result->allAcc as $data) { ?>
<option value="<?php echo $data->Id;?>"> <?php echo $data->Name; ?></option>
<?php } ?>
</select>
</form>
<script>
function getIPL() {
var urlmenu = document.getElementById( 'kUI_dropdown_basic_select' );
urlmenu.onchange = function() {
window.open( 'admin_mailbox.php?Id=' + this.options[ this.selectedIndex ].value,"_self");
};
}
</script>
var urlmenu=document.getElementById('kUI_dropdown_basic_select');
urlmenu.onchange=函数(){
window.open('admin\u mailbox.php?Id='+this.options[this.selectedIndex].value,“\u self”);
};
从选择框中删除onchange
。并使用以下内容更改您的JS:
<form class="uk-form-stacked">
<label class="uk-form-label" for="kUI_dropdown_basic_select">Select a user</label>
<select id="kUI_dropdown_basic_select" class="uk-form-width-medium" onchange="getIPL();">
<?php foreach ($response->result->allAcc as $data) { ?>
<option value="<?php echo $data->Id;?>"> <?php echo $data->Name; ?></option>
<?php } ?>
</select>
</form>
<script>
function getIPL() {
var urlmenu = document.getElementById( 'kUI_dropdown_basic_select' );
urlmenu.onchange = function() {
window.open( 'admin_mailbox.php?Id=' + this.options[ this.selectedIndex ].value,"_self");
};
}
</script>
var urlmenu=document.getElementById('kUI_dropdown_basic_select');
urlmenu.onchange=函数(){
window.open('admin\u mailbox.php?Id='+this.options[this.selectedIndex].value,“\u self”);
};
您已经在这里定义了select框的onchange事件……那么为什么要在同一元素上再次使用onchange呢
使用以下代码
选择一个用户
您已经在这里定义了select框的onchange事件……那么为什么要在同一个元素上再次使用onchange呢
使用以下代码
选择一个用户
下面是非常简单的代码
<form class="uk-form-stacked">
<label class="uk-form-label" for="kUI_dropdown_basic_select">Select a user</label>
<select id="kUI_dropdown_basic_select" class="uk-form-width-medium">
<?php foreach ($response->result->allAcc as $data) { ?>
<option value="<?php echo $data->Id;?>"> <?php echo $data->Name; ?></option>
<?php } ?>
</select>
</form>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#kUI_dropdown_basic_select").change(function(){
window.open( 'admin_mailbox.php?Id=' + $(this).val() ,"_self");
});
});
</script>
下面是非常简单的代码
<form class="uk-form-stacked">
<label class="uk-form-label" for="kUI_dropdown_basic_select">Select a user</label>
<select id="kUI_dropdown_basic_select" class="uk-form-width-medium">
<?php foreach ($response->result->allAcc as $data) { ?>
<option value="<?php echo $data->Id;?>"> <?php echo $data->Name; ?></option>
<?php } ?>
</select>
</form>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#kUI_dropdown_basic_select").change(function(){
window.open( 'admin_mailbox.php?Id=' + $(this).val() ,"_self");
});
});
</script>
使用document.getElementById
获取元素id时,无需在
我还建议您为选择添加另一个选项Select
测试示例(根据您的PHP代码进行更改):
var urlmenu=document.getElementById('kUI_dropdown_basic_select');
urlmenu.onchange=函数(){
window.open('admin\u mailbox.php?Id='+this.options[this.selectedIndex].value,“\u self”);
};代码>
选择一个用户
选择
测试1
测试2
使用document.getElementById
获取元素id时,无需在
我还建议您为选择添加另一个选项Select
测试示例(根据您的PHP代码进行更改):
var urlmenu=document.getElementById('kUI_dropdown_basic_select');
urlmenu.onchange=函数(){
window.open('admin\u mailbox.php?Id='+this.options[this.selectedIndex].value,“\u self”);
};代码>
选择一个用户
选择
测试1
测试2
它可能正在工作。change
事件只是在不同的时间使用多个处理程序第一次出现的change
调用getIPL()
,它只是用一个不同的函数替换自己作为处理程序。然后,第二个函数会在随后的事件发生时打开新窗口。它很可能正在工作。change
事件只是在不同的时间使用多个处理程序第一次出现的change
调用getIPL()
,它只是用一个不同的函数替换自己作为处理程序。然后,第二个函数会在随后每次事件发生时打开新窗口。没有onclick事件哦,是的,它是onchage
。谢谢。还建议添加一个默认选项,否则,它将被选为默认选项,并且将不起作用。。。也许..@devpro如果用户更改选择
框的值,它会工作。没有onclick事件哦,是的,它是onchage
。谢谢。还建议添加一个默认选项,否则,它将被选为默认选项,并且将不起作用。。。如果用户更改select
box的值,也许..@devpro会起作用。您现在已经在解决方案中引入了jquery,这不必要地使问题复杂化了。您没有注意到这样一个事实:您已经在这个解决方案中引入了依赖项,而且它可以很好地与香草javascript一起工作,正如@Mr.Engineer的回答所指出的。您现在已经在解决方案中引入了jquery,这不必要地使问题复杂化。您没有引起任何注意,您已经在这个解决方案中引入了依赖项,并且它可以很好地与香草javascript一起工作,正如@Mr.Engineer的回答所指出的那样
但不是这个urlmenu.onchange=function(){
您不需要再次使用utlmenu.onchange事件…因为它已经可以用于onchange事件只需使用:window.open('admin\u mailbox.php?Id='+value,“\u self”);它非常简单,您也可以使用jquery来处理相同的内容我在回答中添加了它这将起作用alert(value);
但不是这个urlmenu.onchange=function(){
您不需要再次使用utlmenu.onchange事件…因为它已经对onchange事件起作用了只需使用:window.open('admin\u mailbox.php?Id='+value,“\u self”);非常简单,您也可以使用jquery来处理相同的内容我在回答中添加了它谢谢您的帮助:)谢谢您的帮助:)
function getIPL(value) {
//var urlmenu = document.getElementById( 'kUI_dropdown_basic_select' );
//urlmenu.onchange = function() {
window.open( 'admin_mailbox.php?Id=' + value,"_self");
//};
}