簡體   English   中英

使用jQuery在異步操作中更改文本值

[英]changing text value in async action using jquery

我有內視圖

  <a onclick="myAction(@item.Id)" id="myActionId">@actionText</a>

要么

<a id="myActionId" onclick="myAction(21)">Activate</a>

將id發送到mvc控制器進行進一步處理的功能。 作為控制器的響應,我正在獲取字符串數據,該數據應用於更改按鈕文本而無需重新加載頁面。

<script type="text/javascript">              
  function myAction(someId){
        $.ajax({
            method: "POST",
            url: "/mydata/someaction/",
            data: { id: someId}
        }).done(function( msg ) {
            $("#myActionId").text(msg);            
        });
    }    
</script>

我在done(function(msg))中收到正確的文本,但是按鈕文本未使用該值更新。 我在這里做錯了什么?

用戶$('#mybutton').val("My NEW Text");
看演示演示

ajax方法默認為Asynchronous:true在您的代碼中, myAction(someId)函數return as true default .so,從ajax方法獲取結果之前。您的MyAction()函數處於非活動狀態。由於此原因,您無法設置錨標記中的文字。

<script type="text/javascript">              
function myAction(someId){
    $.ajax({
        method: "POST",
        url: "/mydata/someaction/",
        async: false,
        data: { id: someId}
    }).done(function( msg ) {
        $("#myActionId").text(msg);            
    });
}     

暫無
暫無

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

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