javascript - 如何使用 javascript 或 jquery 删除选择上的名称并在文本区域上添加名称?

标签 javascript jquery html select textarea

我的html代码是这样的:

$('input[name="is_follow_up"]').change(function(){
        var val = $(this).val(),
            input = $('.input-reason');
        if (val == 'n') 
            input.show()
        else 
            input.hide();
    });
    $('.select-reason').change(function(){
        var reason = $(this).val(),
            others = $('.textarea-others');
        if (reason == 4) 
            others.show();
        else 
            others.hide()
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label class="radio-inline">
        <input type="radio" name="is_follow_up" id="inlineRadio1" value="y" required checked> accept
    </label>
    <label class="radio-inline">
        <input type="radio" name="is_follow_up" id="inlineRadio2" value="n" required> reject
    </label>
    <div class="row input-reason" style="display: none">
        <div class="col-sm-2">Reason:</div>
        <div class="col-sm-5">
            <div class="form-group">
                <select class="form-control select-reason" name="reason">
                    <option value="Reason 1">Reason 1</option>
                    <option value="Reason 2">Reason 2</option>
                    <option value="Reason 3">Reason 3</option>
                    <option value="4">Reason 4</option>
                </select>
            </div>
            <div class="form-group textarea-others" style="display: none">
            <textarea rows="5" class="form-control"></textarea>
            </div>
        </div>
    </div>
我希望如果用户选择原因 4,它将删除选择标签上的 name="reason"并在文本区域标签上添加 name="reason"

我该怎么做?

最佳答案

然后你可以简单地使用 jQuery 来删除/添加名称属性

$('.select-reason').change(function(){
    var reason = $(this).val(),
        others = $('.textarea-others');
    if (reason === '4') { 
        others.show();
        $(this).removeAttr('name');
        others.find('textarea').attr('name', 'reason');
    } else { 
        others.hide();
    }
});

关于javascript - 如何使用 javascript 或 jquery 删除选择上的名称并在文本区域上添加名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47467220/

相关文章:

javascript - CSS 不会出现在 HTML 和 Node 中

javascript - JSON 嵌套元素未定义

javascript - AngularJS 引导下拉导航栏

html - 如何在小型设备中将文本保存在框内

jquery - 如何在悬停时显示数据属性?

javascript - 如何使用 Bootstrap 在表中创建可点击的行?

JavaScript 非正则表达式替换

javascript - 检测浏览器是否支持位置: fixed

javascript - 如何在 jQuery Ajax 中返回数据?

javascript - jquery 计算字符数并添加类不起作用