jquery .attr()不处理输入元素

时间:2013-09-05 10:29:54

标签: javascript jquery html css dom

http://jsfiddle.net/uz79M/这是我非常简单的代码,任何人都可以告诉我为什么它不会开始工作xD我错过了傻事不是吗?为什么该死的价值保持在="test"

感谢阅读!

(P.S。:我的标签是正确的还是我应该删除/替换其中的一些?)

15 个答案:

答案 0 :(得分:13)

使用.val()更改输入元素的值

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

Ex :(我在代码中做了一些清理工作)

jQuery(function ($) {
    $("#AttachmentTypeSelect").change(function () {
        var selectvalue = $(this).val();
        if (selectvalue !== "select") {
            $('input[name="prop_sc_AttachmentType"]').val(selectvalue);
        }
    });
});

演示:Fiddle

使用.attr()也是错误的,应该是

$(element).attr(attribute, value)

$(element).attr('tab-index', 1)

答案 1 :(得分:5)

您的代码不正确,应该是

  

.attr('value',selectValue);

或更好

  

.val(selectValue);

答案 2 :(得分:5)

jtrery选择器的attr和prop函数用于没有该选择器函数的属性。如果要检查或更改输入的值,则应调用选择器的val()函数。将您的代码更改为:

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

答案 3 :(得分:3)

变化:

 jQuery('input[name="prop_sc_AttachmentType"]').attr('value="' + selectvalue + '"');

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

答案 4 :(得分:3)

首先,您的attr()语法不正确,应为attr('prop', 'value');,其次要设置值,您应该使用val()。试试这个:

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

Example fiddle

答案 5 :(得分:3)

attr()更改为val()

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

http://jsfiddle.net/uz79M/3/

答案 6 :(得分:3)

它是

.attr( attributeName, value )

所以它将是

jQuery('input[name="prop_sc_AttachmentType"]').attr('value',selectvalue);

答案 7 :(得分:2)

您应该使用val()更改其值:

jQuery('input[name="prop_sc_AttachmentType"]').val(selectValue);

属性属性最好用于其他属性,如标题,名称等。

答案 8 :(得分:2)

而不是

    if (selectvalue !== "select") {
        jQuery('input[name="prop_sc_AttachmentType"]').attr('value="' + selectvalue + '"');
    }

使用

  if (selectvalue !== "select") {
        jQuery('input[name="prop_sc_AttachmentType"]').val( selectvalue);
    }

公平交易!:)

答案 9 :(得分:2)

你必须使用.val()函数,

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue); //standard

或者您可以更正您的代码:

jQuery('input[name="prop_sc_AttachmentType"]').attr('value', selectvalue);

<强> FIDDLE DEMO

答案 10 :(得分:2)

您可以使用.val方法直接设置值。

替换它:

jQuery('input[name="prop_sc_AttachmentType"]').attr('value="' + selectvalue + '"');

jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);

答案 11 :(得分:2)

这是工作代码

这里是fiddle

jQuery(document).ready(function () {
    var selectvalue = jQuery("select#AttachmentTypeSelect").val();
    jQuery("select#AttachmentTypeSelect").change(function () {
        alert("d")
        selectvalue = jQuery("select#AttachmentTypeSelect").val();
        alert(selectvalue);
        if (selectvalue !== "select") {
            $('input[name="prop_sc_AttachmentType"]').attr('value', selectvalue);
        }
    });
});

答案 12 :(得分:2)

使用以下内容:

jQuery(document).ready(function () {
    var selectvalue = jQuery("select#AttachmentTypeSelect").val();

    jQuery("select#AttachmentTypeSelect").change(function () {
        selectvalue = jQuery("select#AttachmentTypeSelect").val();

        if (selectvalue !== "select") {
        jQuery('input[name="prop_sc_AttachmentType"]').val(selectvalue);
        }
    });
});

答案 13 :(得分:1)

试试这个:

jQuery(document).ready(function () {
        var selectvalue = jQuery("select#AttachmentTypeSelect").val();
        jQuery("select#AttachmentTypeSelect").change(function () {
            alert("d")
            selectvalue = jQuery("select#AttachmentTypeSelect").val();
            alert(selectvalue);
            if (selectvalue !== "select") {
                $('input[name="prop_sc_AttachmentType"]').attr('value', selectvalue);
            }
        });
    });

答案 14 :(得分:0)

也许您没有正确使用attr功能:

这应该是这样的

$('selector').attr({value:desiredValue});

$('selector').attr('value',desiredValue);

但是对于jQuery提供的设置值

$('selector').val(desiredValue);