2016-07-07 97 views
1

多个点我有以下的输入标签选择输入标签使用一个名称与使用JQuery

<input name="PostBack.Contract.ID" type="hidden" value="foo" /> 

,我需要更改该值。我用下面的语句尝试,但它不工作

$("input[type=hidden].PostBack.Contract.ID"); 

我得到以下结果

[] 

我做错了什么?

+3

' $(“input [type = hidden] [name ='PostBack.Contract.ID']”);'但是,为什么不简单地使用'id'或'class' attrib茨?无论如何,请参阅https://api.jquery.com/category/selectors/ – haim770

+0

@ haim770嗨,感谢您的快速回答!这是公认的答案!我知道我可以使用一个ID,但我正在使用ASP.NET MVC,它使用* name *属性来执行** [HttpPost] **操作中的绑定,因此为什么要添加额外的属性? – vcRobe

+0

感谢你们所有人的快速响应! – vcRobe

回答

1

变化

$("input[type=hidden].PostBack.Contract.ID"); 

要:

$('input[name="PostBack.Contract.ID"]'); 

这里是DEMO

请注意,我已经改变了输入类型为 '文本' 的示范。

1

使用attribute selectors选择name的元素。看看下面的代码(我已经改变了输入型到text所以输出可以很容易地看出):

$(document).ready(function(){ 
 
    $("input[name='PostBack.Contract.ID']").val("bar"); 
 
});//
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input name="PostBack.Contract.ID" type="text" value="foo" />

+0

您错过了方括号。 –

+0

@MarioAlexandroSantini谢谢:)。更正它。 –