簡體   English   中英

為什么返回 javascript 選擇器的值,但使用 jquery 未定義

[英]Why would the value from a javascript selector be returned but undefined using jquery

我有一個名為myForm的簡單表格,我正在做這個練習,以便在 Javascript 和 jquery 上做得更好。在我的表格中,我有一組單選按鈕,它們充當 boolean 值來顯示或隱藏其他內容(在本例中,2 div包含表格的 s)。

我想使用 jquery 選擇器而不是整個document.get javascript 方式稍微整理一下代碼。 如果重要的話,我正在 ASP.NET Core 3.1 MVC 應用程序中執行此操作。

以下代碼正確獲取了我的單選按鈕的值

我的看法

<div class="form-group">
     <input type="radio" asp-for="AssignExtension" name="AssignExtension" value='true' onclick="assignExtensionSelect('true')" /> Yes
     <input type="radio" asp-for="AssignExtension" name="AssignExtension" value='false' onclick="assignExtensionSelect('false')" /> No
</div>

網站.js

    <script>
        function assignExtensionSelect(extRequired) {
            let formInput = document.getElementById("myForm");
            //let formInput = $("#myForm");
            console.log(formInput.AssignExtension.value);

        if (extRequired) {
            $('#ifassignextension').show();
            $('#ifnotassignextension').hide();
        }
        else {
            $('#ifassignextension').hide();
            $('#ifnotassignextension').show();
        }
    }
    </script>

注釋行是無法正常工作的行。 當我有formInput = $("#myForm");時,為什么代碼返回undefined 但是當我使用document.getElementById語法分配變量時,是否按預期工作?

注意:我已經將 jquery 包含在視圖中,並且其他函數已經在使用它,所以這不是依賴性問題或 jquery 未加載。

您正在嘗試對 jQuery 個對象使用 DOM 屬性。 如果您使用的是 jQuery,則必須使用它的選擇器和方法。

let formInput = $("#myForm");
console.log(formInput.find("[name=AssignExtension]:checked").val());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM