【问题标题】:Use dropdown input as placeholder in another field在另一个字段中使用下拉输入作为占位符
【发布时间】:2020-12-28 14:24:21
【问题描述】:

基于this 威胁,我已经设法(特别感谢 Tami)创建了一个包含可变年份数字的下拉菜单。 现在我想将该下拉菜单的选定值用作另一个输入字段的(部分)占位符。

我试过这个没有运气:

[number* ba-maanden min:1 max:12 placeholder "cf7_get_input="recent-years""]

有人知道如何完成这项工作吗?

谢谢, 瓦斯科

【问题讨论】:

  • 你可能想要像这样使用 jQuery 的东西 stackoverflow.com/questions/9232810/…
  • 谢谢霍华德,所以如果我是正确的,我可以使用这段代码吗?但不幸的是,它不起作用。 add_action( 'wpcf7_contact_form', 'action_wpcf7_contact_form', 10, 1 ); $('9462').find("input[type=dropdown]").each(function(ev) { if(!$(this).val()) { $(this).attr("placeholder", [recent-years]); };

标签: input drop-down-menu placeholder contact-form-7


【解决方案1】:

这未经测试,但应该可以工作。您可以通过将其全部内联并用<script></script> 将其添加到您的表单本身,或者将其添加到您的主题的js文件中。

jQuery(function($) {
   $('select[name="ba-maanden"]').on('change', function(){
       // Assign variable $placeholder to the chosen value
       let $placeholder = $(this).val();
       // replace 'your-field-name' with the cf7 field name
       $('input[name="your-field-name"]').attr('placeholder', $placeholder);
   });
});

【讨论】:

  • 谢谢霍华德,很遗憾我无法让它工作。不是直接将其添加到表单中,也不是通过主题的 js 文件。我尝试了几种选择。我是否需要向该字段添加(某种)临时占位符,或者我不需要添加任何内容?有什么想法吗?
  • 哎呀.. 我写了input 而不是select 它现在应该可以工作了。我已经编辑了答案
  • 它有效,谢谢。但是缺少2个选项。在哪里可以添加更多占位符文本?现在将更改为年份日期(2020 年)。但我希望将其更改为:“Aantal maanden in”,然后是年份。在我尝试的最后一行:$('input[name="your-field-name"]').attr('placeholder', "Aantal maanden in" $placeholder);,但那个行不通。也试过不带引号。我该如何设置它会默认显示下拉菜单的第一选择?因为我没有第一个空白选项,当有人选择第一个时,他们没有看到占位符。谢谢
  • 您必须使用 javascript 连接符 + 连接变量和其他文本 "your text" + $placeholder 既然这回答了您的问题,那么接受答案是合适的。谢谢。
  • 是的,行得通!抱歉,我对 jQuery 完全陌生。最后一个问题:第一个选项是默认选项。如何也看到这个选项?因为现在它只在我单击下拉菜单时显示占位符。但是当第一个选项是正确的(因此访问者不必更改它)时,访问者看不到占位符。谢谢!当然,我会接受你的回答。
猜你喜欢
  • 1970-01-01
  • 2016-10-17
  • 2013-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多