清除输入值Javascript

时间:2016-04-14 13:59:45

标签: javascript jquery html css

我有两个单选按钮,foreach单选按钮我有文本输入字段。我添加这个-------就像文本输入字段的默认值。我想要的是在选中第二个无线电时删除此值。

我的代码是:

if (jQuery('.product-options .display ul li:nth-child(1)').find('input').is(':checked')) {
        jQuery(".product-options dd input.input-text").attr('value', '--------');
        jQuery(".product-options dd input.input-text").addClass('validation-passed');
}

jQuery('.product-options .display ul li:nth-child(1)').find('input').change(function(){
    if (jQuery(this).is(':checked')) {
            jQuery(".product-options dd input.input-text").attr('value', '--------');
            jQuery(".product-options dd input.input-text").addClass('validation-passed');

    }

})

jQuery('.product-options .display ul li:nth-child(2)').find('input').change(function(){
    if (jQuery(this).is(':checked')) {
            jQuery(".product-options dd input.input-text").attr('value', '');
    }
})

2 个答案:

答案 0 :(得分:3)

使用.val('')设置输入值,而不是.attr('value', '')

答案 1 :(得分:0)

首先你的代码是一团糟。你应该至少缩短选择器,很难阅读它们。其次,我有一些问题需要了解你的问题。

基于您的代码的一些评论。

1)您在两种情况下都改变了相同的输入。无论选中哪个按钮,您仍然可以通过搜索相同的元素 import QtQuick 2.5 import QtQuick.Window 2.2 import QtQuick.Controls 1.4 Window { id: root visible: true width: 200 height: 500 ListView { anchors.fill: parent model: 10 spacing: 20 ExclusiveGroup { id: ex } // the group for all the delegate delegate: Rectangle { id: delegate width: ListView.view.width height: 30 color: checked ? "yellow" : "steelblue" // code to have exclusive behaviour property bool checked: false property ExclusiveGroup exclusiveGroup: ex onExclusiveGroupChanged: { if (exclusiveGroup) exclusiveGroup.bindCheckable(delegate) } // mouse area to trigger the property change MouseArea { anchors.fill: parent onClicked: checked = true } } } }

2)amphetamachine所说的 - 你应该使用jQuery(".product-options dd input.input-text")来清除输入的值。由于我的第一点,你的价值是空白的。你只是选错了。