使用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(函数(msg))中收到了正确的文本,但按钮文本没有更新为该值。我在这里做错了什么?
用户$('#mybutton').val("My NEW Text");
看看演示
ajax方法默认为Asynchronous:true
。在您的代码中,myAction(someId)
函数为return as true default
。因此,在从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);
});
}
相关文章:
- 用于选择/文本框操作的JavaScript
- 如何指示“;熟度;在异步操作中
- 使用jquery更改异步操作中的文本值
- 节点.js中的嵌套异步操作
- 阻止chrome.webRequest.onBeforeSendHeaders侦听器中的异步操作
- 节点.js和表达式:如何在异步操作后返回响应
- 无法在Redux中测试异步操作
- 当我在异步操作Redux上开始单元测试时,没有定义错误承诺
- 循环中的异步操作
- 回流如何侦听异步操作已完成
- 我们可以使用Jasmine在测试中执行异步操作吗
- jQuery:如何检查以确保所有异步操作都已完成
- jQuery文本html操作,以查找大量文本中出现的字符,然后更改其颜色
- JavaScript ES6 承诺在 while 循环中调用异步操作
- 请等待异步操作 (firebase) 调用完成,然后再加载网页
- 具有 Javascript 同步接口的异步操作
- 如何在异步操作期间使 Express.js 日志错误
- 如何在 $ 中执行异步操作.延迟,然后失败过滤回调并传递回成功链
- Redux 中的异步操作
- Redux - 智能组件 - 在挂载组件之前如何处理异步操作