Добавить раскрывающийся список районов в биллинг - PullRequest
0 голосов
/ 19 апреля 2020

На странице оформления заказа Для определенной страны я хочу добавить выпадающий список районов ниже штата. Когда состояние меняется, район должен изменить параметры. Как мне это сделать? Я написал много jquery для него, но есть ли более простой способ?

function populate_district(e, dist){
                var elem = e.getAttributeNode("id").value.split("_")[0];
                // var elem = e.target.attr("id").split("_")[0];
                if(jQuery("#"+elem+"_country").val() == "NP"){
                console.log(e.value);
                     var state = e.value; 
                     // var value = jQuery("#"+elem+"_district").val();
                     if(dist == undefined){
                        var value = jQuery('#'+elem+"_district").val();
                     }else{
                     var value = dist;
                    }
                 if(state){       
                    jQuery.ajax({
                        type: 'POST',
                        url: 'get-state-district.php',
                        // dataType: 'json',
                        data: {'state_id': state, 'value': value},
                        success: function(data){
                            jQuery("#"+elem+"_district").html(data);
                        }
                    });
                    }
                }

    }

$('#shipping_state').on('change', function(e, dist){

        populate_district(e.target, dist);
});


<?php

defined( 'ABSPATH' ) || exit;

require 'woo-district-option.php';

if (! empty($_POST["state_id"])) {

    $stateId = $_POST["state_id"];

    $stateResult = Woo_District_Option::district_option($stateId);

    foreach ($stateResult as $key => $value) {
        if($key == $_POST['value']){
            echo "<option value='".$key."' selected>".$value."</option>";
        }else{
            echo "<option value='".$key."'>".$value."</option>";
        }
    }
    die();
}
?>

Также еще один вопрос, в my-account / edit-address / shipping / как woocommerce заполняет такие поля, как Государство Страна?

Я спрашиваю об этом, потому что я использую плагин woocommerce-address-book для сохранения нескольких адресов доставки, и он использует URL-адрес, такой как my-account / edit-address / shipping /? Address-book = shipping2 и мой код не заполняется этим кодом, потому что я не знаю, какой должен быть район. Я даже не понимаю, как заполняются другие поля. Как WordPress / WooCommerce обрабатывает URL-адреса, как это?

Спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...