首页 > 解决方案 > 如何使用 jQuery 覆盖输入的默认值(来自 WP get_terms())

问题描述

我有一个表单,其输入字段的值是从 WPget_terms()数组中提取的,如下所示:

    <?php $location = sanitize_text_field($_GET['location']);

    if($location) {
        $matching_locations = get_terms(array(
            'taxonomy' => 'job_location',
            'fields' => 'slugs',
            'name__like' => $location
        ));
    };
    if($matching_locations) : ?>
        <section class="job-search__side-bar-location">
            <h2 class="job-search__side-bar-title">Location</h2>
            <div class="job-search__sider-bar-location-row">
                <label class="job-search__side-bar-location"><?php echo ucwords($matching_locations[0]); ?></label>
                <input type="hidden" name="location" class="job-search__side-bar-location" id="location_side-bar" value="<?php echo $matching_locations[0]; ?>" readonly />
                <input id="remove-location" class="job-search__side-bar-location-delete" value="&#x2715" />
            </div>
        </section>
    <?php endif; ?>

在输入下方location,我有一个 id 的第二个输入remove-location,它分配了一个 jQueryclick方法,该方法应该分配一个空字符串作为value输入location,然后重新提交表单:

    $('#remove-location').click(function() {
        $('#location_side-bar').val("");
        $('#sidebar-search').submit();
    })

但是,当我单击remove-location输入时,表单会再次提交,并使用location税收查询中的相同值。有没有办法解决?我希望表单在所有情况下都保留该值,但单击输入location时除外。remove-location

我添加了一张图片来帮助说明我的目标:

输入截图

标签: phpjquerywordpressforms

解决方案


推荐阅读