首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >结合两种不同功能的结果?

问结合两种不同功能的结果?
EN

Stack Overflow用户
提问于 2012-04-18 15:58:32
回答 2查看 125关注 0票数 0
  • 使用ASP和DotNetNuke循环循环重复单选按钮的列表。
  • 利用JQuery
  • 当前显示weightCalculations函数的适当结果值(例如: 3)
  • 如何将rbtCalculations结果与weightCalculations结果组合?
  • 如果rbtCalculations =很高,weightCalculations =很高,那么$('p.custom‘+ ID).text("5"); 3函数weightCalculations(值,ID) { if (value.value == "High") { $('p.custom‘+ ID).text("3");}{${(’p.custom‘+ ID).text("2");}}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-18 18:08:52

我可能只是在单选按钮中添加一个class来识别它们,并添加一个包装元素来将所有部件关联在一起:

代码语言:javascript
复制
<div class="js-weight-calc-wrap">
    <input type="radio" class="js-rbt" ... />
    <input type="radio" class="js-rbt" ... />

    <input type="radio" class="js-weight" ... />
    <input type="radio" class="js-weight" ... />
    <input type="radio" class="js-weight" ... />

    <p class="js-result custom6559"></p>
</div>

<script>
jQuery(document).ready(function ($) {
    $('.js-rbt, .js-weight').change(function () {
        var $this = $(this),
            $wrap = $this.closest('.js-weight-calc-wrap'),
            rbtVal = $wrap.find('.js-rbt:checked').val(),
            weightVal = $wrap.find('.js-weight:checked').val(),
            result = rbtVal === 'VeryHigh' && weightVal === 'High' 
                     ? '5'
                     : rbtVal === 'VeryHigh' && weightVal === 'Low'
                         ? '4'
                         : '0';
        $wrap.find('.js-result').text(result)
    });
});
</script>

我可能还会创建一个包含所有逻辑的jQuery插件,所以在您的页面上,它只是一个调用,如下所示:

代码语言:javascript
复制
jQuery(function ($) { 
    $('.js-weight-calc-wrap').weightCalculator({
        rbtSelector: '.js-rbt',
        weightSelector: '.js-weight',
        resultSelector: '.js-result'
    });
});

更新

我以前已经忘记了,您在选择单选按钮时需要过滤它们,这样您就只能得到选中的按钮(与<select/>元素混淆)。将:select添加到选择器后,它将按预期工作。我稍微清理了一下,并创建了一个工作jsFiddle。

票数 1
EN

Stack Overflow用户

发布于 2012-04-18 17:11:58

代码语言:javascript
复制
function weightCalculations(value, ID) {
        if (value.value === "High" && $('input[name="rbt"]').val() === "Very High") {
            $('p.custom' + ID).text("5");
        }
        else if(value.value === "High"){
            $('p.custom' + ID).text("3");
        }
        else {
            $('p.custom' + ID).text("2");
        }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10213299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档