首页 > 解决方案 > 如果 Select 输入的值为 0,则设置一个值 - Contact Form 7

问题描述

如果 select 的值为 0,我正在尝试将 aa select 的值设置为 3。

这就是我到目前为止所得到的。

<?php
// define the wpcf7_posted_data callback 
function action_wpcf7_posted_data( $array ) { 
    $jobYears = $array['job-years-1'];
    $jobMonths = $array['job-months-1'];


    if ( $jobYears === 0 && $jobMonths === 0) {

        $array['job-years-1'] = 3;

    } 

    return $array;

}; 

add_filter( 'wpcf7_posted_data', 'action_wpcf7_posted_data', 10, 1 );

?>

HTML

<select name="job-years-1" class="wpcf7-form-control wpcf7-select" aria-invalid="false">
    <option value="0">0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
</select>

<select name="job-months-1" class="wpcf7-form-control wpcf7-select" aria-invalid="false">
    <option value="0">0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
</select>

如果有人能指出我正确的方向,那将不胜感激。

谢谢,

Ĵ

标签: phphtmlwordpresscontact-form-7

解决方案


不要使用严格的比较。Post 值是字符串而不是整数。将您的测试更改为

if ( $jobYears == 0 && $jobMonths == 0) {

推荐阅读