PFS (PrimeFaces Selectors) enables using jQuery Selector API when referencing components.
<div class="card">
    <h:form>
        <p:panel header="Form">
            <h:panelGrid columns="4" cellpadding="5" styleClass="mb-3">
                <h:outputLabel for="txt1" value="Text 1"/>
                <p:inputText id="txt1" value="#{selectorView.text1}" required="true" label="Text 1">
                    <f:validateLength minimum="2"/>
                </p:inputText>
                <p:message for="txt1"/>
                <h:outputText value="#{selectorView.text1}"/>
    
                <h:outputLabel for="txt2" value="Text 2"/>
                <p:inputText id="txt2" value="#{selectorView.text2}" required="true" label="Text 2"/>
                <p:message for="txt2"/>
                <h:outputText value="#{selectorView.text2}"/>
    
                <h:outputLabel for="txt3" value="Text 3"/>
                <h:selectOneMenu id="txt3" value="#{selectorView.text3}" required="true" label="Text 3">
                    <f:selectItem itemLabel="Select One" itemValue="" noSelectionOption="true"/>
                    <f:selectItem itemLabel="Option 1" itemValue="1"/>
                    <f:selectItem itemLabel="Option 2" itemValue="2"/>
                    <f:selectItem itemLabel="Option 3" itemValue="3"/>
                </h:selectOneMenu>
                <p:message for="txt3"/>
                <h:outputText value="#{selectorView.text3}"/>
            </h:panelGrid>
    
            <p:commandButton update="@(form)" value="All Forms" styleClass="mr-2"/>
            <p:commandButton update="@(form:last)" value="Last Form" styleClass="mr-2"/>
            <p:commandButton update="@(.ui-panel)" value="All Panels" styleClass="mr-2"/>
            <p:commandButton process="@(.ui-panel :input)" update="@(.ui-panel)" value="Inputs of Panel" styleClass="mr-2"/>
            <p:commandButton process="@(.ui-panel :input:not(select))" update="@(.ui-panel)" value="Inputs Except Select"/>
    
            <p:growl id="messages"/>
        </p:panel>
    </h:form>
</div>
package org.primefaces.showcase.view.ajax;
import jakarta.enterprise.context.RequestScoped;
import jakarta.inject.Named;
@Named
@RequestScoped
public class SelectorView {
    private String text1;
    private String text2;
    private String text3;
    public String getText1() {
        return text1;
    }
    public void setText1(String text1) {
        this.text1 = text1;
    }
    public String getText2() {
        return text2;
    }
    public void setText2(String text2) {
        this.text2 = text2;
    }
    public String getText3() {
        return text3;
    }
    public void setText3(String text3) {
        this.text3 = text3;
    }
}