如何通过非标准属性访问输入元素?

时间:2019-05-24 10:51:23

标签: jquery forms jquery-selectors

我有几个输入字段,其中的name和id属性根据部署该服务器的服务器而变化,并且 class 也不唯一。每个输入字段的唯一唯一属性是“ roiname”。
如何使用jQuery以跨服务器使用的方式获取此字段的值?

<input roiname="smallLocations" name="__field_13102" id="e5634b55-d6cc-4b32-a5aa-2120b4845dbb" type="number" class="form-control FormTextbox__Input" placeholder="4" value="" min="0" step="1" data-f-datainput="">

我尝试过这样的事情:

var smallLocations = $(":input").attr("smallLocations").val();

但这没用。

3 个答案:

答案 0 :(得分:2)

您当前使用的逻辑不起作用,因为您正在使用attr()来获取属性的值,但找不到该属性的元素。

要解决此问题,您需要使用属性选择器:

var roiname = $(':input[roiname]').val();
console.log(roiname);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input roiname="smallLocations" value="123" name="__field_13102" id="e5634b55-d6cc-4b32-a5aa-2120b4845dbb" type="number" class="form-control FormTextbox__Input" placeholder="4" value="" min="0" step="1" data-f-datainput="">

答案 1 :(得分:0)

您不是在寻找属性的值,而是在寻找 input 的值。 (此外,您的input没有拥有一个名为“ smallLocations”的属性,这是其中一个属性的值。)

类似这样的东西:

$('input[roiname="smallLocations"]').val()

答案 2 :(得分:0)

使用具有attr选择器的提示音

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.spring</groupId> <artifactId>SpringgMVC</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <dependencies></dependencies>

此处的文档

https://api.jquery.com/has-attribute-selector/