使用 React 生成组件进行 jQuery ID 选择

问题描述 投票:0回答:1
javascript jquery reactjs bookmarklet
1个回答
0
投票

您需要转义选择器。这是我创建的一个 jQuery 插件,它返回与标签关联的输入。

(function() {
  $.formElementByLabel = function(label) {
    var $label = $('label:contains("' + label + '")');
    var formElementId = $label.attr("for");
    return $('#' + $.escapeSelector(formElementId));
  };
})(jQuery)

const $input = $.formElementByLabel("Project ID");

console.log($input.val()); // foo
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label class="sc-1gau0qu-1 gGZrXf StyledLabel-sc-2utmsz-0 bYrRLL" id="64val-field_2.1.0--label" for="64val-field_2.1.0--input" data-garden-id="forms.input_label" data-garden-version="8.69.11" data-garden-container-id="containers.field" data-garden-container-version="2.1.0">Project ID</label>
<input type="text" class="sc-1gau0qu-2 gEiOHk StyledTextInput-sc-k12n8x-0 bXXlCE" id="64val-field_2.1.0--input" value="foo" data-garden-id="forms.input" data-garden-version="8.69.11" aria-invalid="false" aria-labelledby="64val-field_2.1.0--label" data-test-id="ticket-fields-text-field"
  data-tracking-id="ticket-fields-text-field">

© www.soinside.com 2019 - 2024. All rights reserved.