일부 메뉴에 대해서는 양식 7 워터마크에 문의하십시오.
선택한 필드에 워터마크를 붙이는 방법을 찾고 있습니다.
동작하지 않는다 ->
[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 ---
코드는 단순히 'type of injuri'라는 ID가 있는 드롭다운 메뉴에서 첫 번째 옵션을 찾습니다.그런 다음 '어떻게 다쳤습니까?'라는 텍스트로 대체한다.
스크린샷을 포함한 이 솔루션의 블로그 투고는 이쪽
문자열 치환이 비효율적이라고 생각되는 경우는, 다음과 같이 간단하게 할 수 있습니다.
jQuery(function($) {
$("select option:first").attr('disabled', 'disabled');// Disable the first value/label ---
});
wcf7의 쇼트코드에 다음과 같이 first_as_label을 추가하여 첫 번째 대안은 사용하고 싶은 "label"임을 확인했습니다.
[select name first_as_label 'label' 'alt1' 'alt2' 'alt3']
첫 번째 옵션을 비활성화하면 활성화된 대체 옵션을 선택할 때까지 wcf7은 폼을 확인하지 않습니다.
언급URL : https://stackoverflow.com/questions/13178585/contact-form-7-watermark-for-select-menu
'programing' 카테고리의 다른 글
CDN에서 WordPress로 스크립트를 큐잉하는 방법 (0) | 2023.02.07 |
---|---|
Python: 사전 목록을 json으로 변환 (0) | 2023.02.07 |
날짜 및 날짜 범위 기반 멤버 전용 다운로드 (0) | 2023.02.07 |
슬라이더 이미지를 어둡게 하는 방법 (0) | 2023.02.07 |
Wordpress가 URL의 유니코드 문자를 무시하고 있습니다. (0) | 2023.02.07 |