簡體   English   中英

在 jQuery 中獲取文本框值

[英]Get textbox value in jQuery

無論我嘗試過什么,我都無法在我的 jQuery 函數中獲取文本框的值。 我知道那里有一個價值,我可以看到它。 但是,我下面的代碼返回值的“未定義”。 我不明白為什么。

我有一個在我的 asp.net 頁面上引用的 js 文件。 在我的 asp.net 頁面上,我有一個按鈕可以在點擊時觸發一個功能。

 <asp:ImageButton ID="BtnNext" runat="server" OnClientClick="TransactionType(); return false;" ImageUrl="~/next.png" />

我的jQuery代碼:

function TransactionType() {
    var PType = $("#TxtPTypeValue").val;

    alert(PType);

    if (PType == "CC") {
        SubmitCCTransaction();
    } else if (PType == "EC") {
        SubmitECheckTransaction();
    };

};

不工作的部分是這樣的: var PType = $("#TxtPTypeValue").val; 返回為“未定義”。

你可以用這種方式修復

$("#TxtPTypeValue").val();

 $("#BtnNext").on("click", function(){ console.log($("#TxtPTypeValue").val()); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type = "text" id = "TxtPTypeValue" /> <button id="BtnNext">BtnNext</button>

更新

根據@sh1rts 的評論,您還應該確保

將 ClientIdMode="Static" 添加到該定義中,沒有它,實際頁面上將沒有該 ID

正確的語法

$('#TxtPTypeValue').val()

用於返回值時:

此方法返回第一個匹配元素的 value 屬性的值。

用於設置值時:

此方法為所有匹配的元素設置 value 屬性的值。

信息來源在這里

Val是一個函數,所以你必須像這樣調用它val()

試試下面的代碼。

 function TransactionType() { var PType = $("#TxtPTypeValue").val(); alert(PType); if (PType == "CC") { // SubmitCCTransaction(); } else if (PType == "EC") { // SubmitECheckTransaction(); }; };
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <textarea id="TxtPTypeValue"></textarea> <button onclick="TransactionType()">Print Value</button>

 $(document).ready(function(){ $('input:text').val(); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" id="txtvalue" value="425656">

如果要使用服務器端控件的值,則必須傳遞控件的客戶端 ID,例如:

$("#<%=TxtPTypeValue.ClientId%>").val();

暫無
暫無

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

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