简体   繁体   English

根据所选值下拉 cf7 在段落中显示条件文本

[英]Display conditional text in paragraph depending on chosen value dropdown cf7

Base on this thread I have a dropdown menu which shows the chosen value in sentence of the next question of the form.基于这个线程,我有一个下拉菜单,它在表单的下一个问题的句子中显示所选值。 Now I would also like, when one of the values is chosen, another question of the form shows some other text in the sentence, like this: Now I would also like, when one of the values is chosen, another question of the form shows some other text in the sentence, like this:

Year is dropdown value and amount is the conditional text what should be shown in the question (paragraph).年份是下拉值,金额是问题(段落)中应显示的条件文本。

2020: 30.846,- 2019: 30.360,- 2018: 30.000,- 2017: 25.000,- 2016: 24.437,- 2020: 30.846,- 2019: 30.360,- 2018: 30.000,- 2017: 25.000,- 2016: 24.437,-

I've learned how to managed this with the value, but not with different text depending of the chosen value.我已经学会了如何使用值来管理它,但不是根据所选值使用不同的文本。

The code I now have to get the years:我现在必须得到的代码是:

<p>Did you unsubscribed yourself in <span id="recent-years"></span>?</p>
[radio radio-uitgeschreven-nl class:inline-control "Yes" "No"]

And to get the years:并获得年份:

<script>
jQuery(document).ready(function( $ ){
$('select[name="recent-years"]').on('change', function(){
   updateParagraph(); 
});
updateParagraph();

function updateParagraph(){
// Assign variable $placeholder to the chosen value
   let $placeholder = $('select[name="recent-years"]').val();
   // replace 'your-field-name' with the cf7 field name
   $('input[name="ba-maanden"]').attr('placeholder', $placeholder);
   //New code to also add to the form html
   $('#recent-years').html($placeholder);
 }
});
</script>

The input field ba-maanden is for something else.输入字段 ba-maanden 用于其他内容。 So that's why you see this also here.所以这就是为什么你也在这里看到这个。

So I would like when someone selects a specific year they'll see another amount like mentioned above in this question:所以我想当有人选择一个特定的年份时,他们会在这个问题中看到上面提到的另一个金额:

<p>Do you have endowment insurance or savings account of more than 30.846 EUR?</p>
[radio radio-kapitaal-spaar class:inline-control "Ja" "Nee"]

I guess I can put the amount between something like <span>year-amount</span> .我想我可以把金额放在<span>year-amount</span>之间。 But how can I pull the amount depending on the chosen year?但是如何根据所选年份提取金额?

Any help would be very much appreciated!任何帮助将不胜感激!

Best regards,此致,

Vasco瓦斯科

Like this?像这样?

 jQuery(document).ready(function($){ $('select[name="recent-years"]').on('change', function(){ changeQuestion($(this)); }); $('input[name="confirm-insurance"]').on('change', function(){ changeQuestion($(this)); }); }); function changeQuestion(object, selector){ let currentParagraph = $(object).closest('.question'); let currentValue = $(object).val(); let nextParagraph = $(object).closest('.question').next('.question'); $(currentParagraph).fadeOut("slow", function() { $(nextParagraph).show().removeClass('hide'); $(nextParagraph).find('.lastAnswer').text(currentValue); }); }
 .hide { display:none; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <p class="question"> Did you unsubscribed yourself in <span id="recent-years"> <select name="recent-years"> <option selected="true" disabled="disabled">Select year</option> <option value="30.846">2020</option> <option value="30.360">2019</option> </select> </span>? </p> <p class="question hide"> Do you have endowment insurance or savings account of more than <span class="lastAnswer"></span>?<br>Yes <input type="radio" name="confirm-insurance" value="yes"> No <input type="radio" name="confirm-insurance" value="no"> </p> <p class="question hide"> Your answer is <span class="lastAnswer"></span>. </p>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM