在php

时间:2018-12-03 16:15:43

标签: php checkbox checked

我在settingsTemp.php文件中创建了一个复选框,我想在Metabox.php文件中创建一个if条件(无论该复选框是否被选中)。

public function checkerCallback() {

    isset($this->options[self::FI_CHECKBOX_FIELD]) ? $isChecked="checked" : $isChecked="";
    printf(
        '<input id="%s" type="checkbox" name="%s[%s]" %s />',
        self::FI_CHECKBOX_FIELD,
        self::OPTION_NAME,
        self::FI_CHECKBOX_FIELD,
        $isChecked
    );
}

我尝试了以下两种解决方案,但它使我的metabox几乎消失了(在没有if条件的情况下metabox可以正常工作)。因此,在我如何尝试连接两个文件以及如何命名if条件上肯定有一个错误。你能给我一些建议吗? 谢谢你!

解决方案1:

if (SettingsTemp::checkerCallback()->$isChecked=="checked")
    {
        echo '<label for="align_name_field">Name</label><br>';
        echo '<input type="text" name="align_name_field" value="Education" readonly /><br>';

        echo '<label for="align_url_field">Url</label><br>';
        echo '<input type="text" name="align_url_field" value="Education" readonly /><br>';

        echo '<label for="align_desc_field">Description</label><br>';
        echo '<input type="text" name="align_desc_field" value="Education" readonly />';
    }

解决方案2:

if (isset(SettingsTemp->options[SettingsTemp::FI_CHECKBOX_FIELD]))
    {
        echo '<label for="align_name_field">Name</label><br>';
        echo '<input type="text" name="align_name_field" value="Education" readonly /><br>';

        echo '<label for="align_url_field">Url</label><br>';
        echo '<input type="text" name="align_url_field" value="Education" readonly /><br>';

        echo '<label for="align_desc_field">Description</label><br>';
        echo '<input type="text" name="align_desc_field" value="Education" readonly />';
    }

0 个答案:

没有答案