0

皆さんが元気にやっていることを願っています、

私はmagento1.6.0.1で作業しています。私の現在のサイトは米国専用なので、登録ページに国のドロップダウンリストは必要ありません。また、米国のすべての州を州のドロップダウンリストに表示する必要があります。

今のところ、隠しフィールドに国の値「US」を設定しました。

では、どうすればすべての米国の州を州のドロップダウンリストに入れることができますか

4

3 に答える 3

2

これをregister.phtmlに追加して、米国のすべての州を表示します。

                <div class="field">
                    <label for="region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
                    <div class="input-box">
                        <select id="region_id" name="region_id" title="<?php echo $this->__('State/Province') ?>" class="validate-select">
                            <option value=""><?php echo $this->__('Please select region, state or province') ?></option>
                    <?php
                    $this->setData('country_id','US'); // or 'FR'..., default is 'US'
                    $regions     =   $this->getRegionCollection();
                    foreach($regions as $region)
                    {
                        echo "<option value=$region[name]>".$region['name'] . "</option>";
                    }
                    ?>

                        </select>
                        <script type="text/javascript">
                        //<![CDATA[
                            $('region_id').setAttribute('defaultValue', "<?php echo $this->getFormData()->getRegionId() ?>");
                        //]]>
                        </script>

                        <input type="text" id="region" name="region" value="<?php echo $this->escapeHtml($this->getRegion()) ?>" title="<?php echo $this->__('State/Province') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('region') ?>" style="display:none;"   />
                    </div>
                </div>
            </li>
            <li class="fields">
                  <div class="field">
                    <label for="country" class="required"><em>*</em><?php echo $this->__('Country') ?></label>
                    <div class="input-box">
                        <?php echo $this->getCountryHtmlSelect() ?>
                    </div>
                </div>

下のJavaScriptを次のように置き換えます。

  <script type="text/javascript">
        var dataForm = new VarienForm('form-validate', true);
        new RegionUpdater('country', 'region', 'region_id', <?php echo $this->helper('directory')->getRegionJson() ?>);
    </script>

それが役立つことを願っています

于 2013-04-12T07:50:30.277 に答える
0

Magentoの国と州から:

 <script type="text/javascript">
        var dataForm = new VarienForm('form-validate', true);
        new RegionUpdater('country', 'region', 'region_id', <?php echo $this->helper('directory')->getRegionJson() ?>);
    </script>
于 2014-06-24T11:42:20.440 に答える
0

これは私のために働いています。

    <div class="field">
                        <label for="region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
                        <div class="input-box">
                            <select id="region_id" name="region_id" title="<?php echo $this->__('State/Province') ?>" class="validate-select">
                                <option value=""><?php echo $this->__('Please select region, state or province') ?></option>
                            <?php                        
                            $regions = Mage::getModel('directory/country')->load('US')->getRegions();
                            foreach($regions as $region)
                            {
                                echo "<option value=$region[name]>".$region['name'] . "</option>";
                            }
                            ?>

                        </select>                       

                        </div>
</div>
于 2015-05-26T06:21:51.900 に答える