我正在寻找一种在选定字段上放置水印的方法。
那不工作->
[select* c_type class:ic watermark "choose type" "a" "b" "c"]
要放置一个验证失败的无效值,我必须输入include_blank
[select* c_type class:ic include_blank "a" "b" "c"]
但问题是我有---
水印,这就是我想要改变的..
我正在寻找一种在选定字段上放置水印的方法。
那不工作->
[select* c_type class:ic watermark "choose type" "a" "b" "c"]
要放置一个验证失败的无效值,我必须输入include_blank
[select* c_type class:ic include_blank "a" "b" "c"]
但问题是我有---
水印,这就是我想要改变的..
最新版本的 Contact Form 7 允许使用 first_as_label 创建占位符文本,如果用户不进行选择,则该占位符文本不会作为条目进行验证。只需让您的占位符文本成为选项列表中的第一个标签。
[select* food-choice first_as_label "Preferred food?" "Cake" "Pizza" "Burger" "Salad" "Donut"]
经过艰苦的搜索,我发现这个脚本正在工作并在定位到该元素时替换了“---”,这个脚本正在改变所有的“---”
function my_wpcf7_form_elements($html) {
$text = 'Please select...';
$html = str_replace('<option value="">---</option>', '<option value="">' . $text . '</option>', $html);
return $html;
}
add_filter('wpcf7_form_elements', 'my_wpcf7_form_elements');
此代码,替换为定位
function my_wpcf7_form_elements($html) {
function ov3rfly_replace_include_blank($name, $text, &$html) {
$matches = false;
preg_match('/<select name="' . $name . '"[^>]*>(.*)<\/select>/iU', $html, $matches);
if ($matches) {
$select = str_replace('<option value="">---</option>', '<option value="">' . $text . '</option>', $matches[0]);
$html = preg_replace('/<select name="' . $name . '"[^>]*>(.*)<\/select>/iU', $select, $html);
}
}
ov3rfly_replace_include_blank('menu-569', 'Choose language', $html);
ov3rfly_replace_include_blank('menu-614', 'Choose country', $html);
return $html;
}
add_filter('wpcf7_form_elements', 'my_wpcf7_form_elements');
希望这会让你们中的一些人头疼(来源在这里)
试试这个:
[select* menu-206 first_as_label "Select doctor" "David Mikaberidze" "Sophio Gelashvili" "Maya Dolidze"]
你可以用一行 jQuery 来完成。
要将 - - - 替换为我想要的占位符文本,我首先在 Contact Form 7 选项中为字段提供了一个 ID。在此之后,我在脚本标签之间的主题页脚中添加了以下内容。
$("#typeofinjury option:first:contains('---')").html('How Were You Injured?');//Replace ---
该代码只是在下拉菜单中查找 ID 为“typeofinjury”的第一个选项。然后将其替换为文本“你是如何受伤的?”。
带有屏幕截图的此解决方案的博客文章在这里
如果你发现字符串替换效率低下,你可以简单地使用这个:
jQuery(function($) {
$("select option:first").attr('disabled', 'disabled');// Disable the first value/label ---
});
我还通过在 wcf7 的简码中添加“first_as_label”来确保第一个替代方案是我想要使用的“标签”,如下所示:
[select name first_as_label 'label' 'alt1' 'alt2' 'alt3']
通过禁用第一个选项,wcf7 在选择启用的替代选项之前不会确认表单。