Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中第一次更改时未触发onchange事件? 选择一个用户_Javascript_Php - Fatal编程技术网

在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"); 
  //};
}