Make WordPress Core

Ticket #15631: 15631-datalist.diff

File 15631-datalist.diff, 1.9 KB (added by sabernhardt, 4 years ago)

datalist concept

  • src/wp-admin/includes/template.php

     
    712712
    713713        if ( $keys ) {
    714714                natcasesort( $keys );
    715                 $meta_key_input_id = 'metakeyselect';
    716         } else {
    717                 $meta_key_input_id = 'metakeyinput';
    718715        }
    719716        ?>
    720717<p><strong><?php _e( 'Add New Custom Field:' ); ?></strong></p>
     
    721718<table id="newmeta">
    722719<thead>
    723720<tr>
    724 <th class="left"><label for="<?php echo $meta_key_input_id; ?>"><?php _ex( 'Name', 'meta name' ); ?></label></th>
     721<th class="left"><label for="metakeyinput"><?php _ex( 'Name', 'meta name' ); ?></label></th>
    725722<th><label for="metavalue"><?php _e( 'Value' ); ?></label></th>
    726723</tr>
    727724</thead>
     
    730727<tr>
    731728<td id="newmetaleft" class="left">
    732729        <?php if ( $keys ) { ?>
    733 <select id="metakeyselect" name="metakeyselect">
    734 <option value="#NONE#"><?php _e( '&mdash; Select &mdash;' ); ?></option>
     730<input type="text" id="metakeyinput" name="metakeyinput" value="" list="metakeydatalist" />
     731<datalist id="metakeydatalist">
    735732                <?php
    736733                foreach ( $keys as $key ) {
    737734                        if ( is_protected_meta( $key, 'post' ) || ! current_user_can( 'add_post_meta', $post->ID, $key ) ) {
     
    740737                        echo "\n<option value='" . esc_attr( $key ) . "'>" . esc_html( $key ) . '</option>';
    741738                }
    742739                ?>
    743 </select>
    744 <input class="hide-if-js" type="text" id="metakeyinput" name="metakeyinput" value="" />
    745 <a href="#postcustomstuff" class="hide-if-no-js" onclick="jQuery('#metakeyinput, #metakeyselect, #enternew, #cancelnew').toggle();return false;">
    746 <span id="enternew"><?php _e( 'Enter new' ); ?></span>
    747 <span id="cancelnew" class="hidden"><?php _e( 'Cancel' ); ?></span></a>
     740</datalist>
    748741<?php } else { ?>
    749742<input type="text" id="metakeyinput" name="metakeyinput" value="" />
    750743<?php } ?>