Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.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 如果表单提交后第一次选择满足要求,则显示第二次选择_Javascript_Php_Jquery_Html - Fatal编程技术网

Javascript 如果表单提交后第一次选择满足要求,则显示第二次选择

Javascript 如果表单提交后第一次选择满足要求,则显示第二次选择,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我正在尝试建立一个注册页面。在某些时候,用户必须选择他/她的国家/地区。如果该国家有州,则应出现第二个包含该国家州的下拉菜单 到目前为止还不错。使用jQuery我已经完成了它。代码如下所示: $(document).ready(function(){ //if JavaScript is enabled we need to hide the state HTML part $('p#state_nojs').hide(); $('select#country').trigger

我正在尝试建立一个注册页面。在某些时候,用户必须选择他/她的国家/地区。如果该国家有州,则应出现第二个包含该国家州的下拉菜单

到目前为止还不错。使用jQuery我已经完成了它。代码如下所示:

$(document).ready(function(){

  //if JavaScript is enabled we need to hide the state HTML part
  $('p#state_nojs').hide();

  $('select#country').trigger("change");

});

$('select#country').change(function(){

    var country_selected = $('select#country option:selected').val();

    $.ajax({
            type: "POST",
            url: "data.php",
            data: { country : country_selected }
            }).done(function(data){
                $("#states").html(data);

    });

});
php是一个脚本,它将选定的国家作为参数,搜索数据库,并返回与之关联的所有状态。然后将状态下拉菜单插入空状态div中

当我按下提交按钮时,问题开始出现。他们的方式,我编程,是保持当前的用户选择和输入粘性形式的所有领域,除了密码。所以我对国家和州也这么做了

当按下submit(提交)按钮,并且注册过程中出现错误时,重新加载的页面会记住国家选择,但状态下拉菜单不可见,即使选择的国家有状态

我做错了什么


提前感谢。

只有在更改选择时,状态才会添加到DOM中。如果您希望根据所选国家/地区显示它们,那么您需要这样做,并使用.change事件处理程序。因此,我需要执行2个ajax调用?一个用于测试所选国家是否有州,另一个用于显示关联的州?