首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ajax:根据结果更改responseText字体颜色

Ajax:根据结果更改responseText字体颜色
EN

Stack Overflow用户
提问于 2010-08-08 20:37:11
回答 2查看 5.2K关注 0票数 0

这里的程序员过去对我解决问题非常有帮助,所以我想问一个Ajax问题。这可能是一个简单的修复,但我对Ajax还不熟悉。

如果结果是“找不到”,我想做的是将responseText的样式更改为红色。否则文本将是黑色的。下面是我使用的脚本:

代码语言:javascript
运行
复制
 <script type="text/javascript">
  <!-- 
  function newXMLHttpRequest() 
  {
     var xmlreq = false;
     if (window.XMLHttpRequest) 
     {
        xmlreq = new XMLHttpRequest();
     } 
        else if (window.ActiveXObject) 
     {
        try 
        {
           xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
        }
           catch (e2) 
           {
              alert("Error: Unable to create an XMLHttpRequest.");
           }
      }
        return xmlreq;
  }
  function getLocation(location) 
  {
     var getLocation= newXMLHttpRequest(); // sending request
     getLocation.open("GET", "/PP?PAGE=GETLOCATIONNAME&ROUTINGNUM=" + location, false);
     getLocation.send(null); // getting location
     document.getElementById("location_div").innerHTML = getLocation.responseText;
  }
  //-->
 </script>

下面是HTML:

代码语言:javascript
运行
复制
...
<table>
    <tr>
        <td class="ajax_msg">
         <div id="location_div"><div>       
        </td>
    </tr>
</table>
...
EN

回答 2

Stack Overflow用户

发布于 2010-08-08 20:48:34

对于这些样式,您应该使用css:

联署材料:

代码语言:javascript
运行
复制
if (reponseText == "NOT_FOUND") 
   document.getElementById("location_div").className = "error";
else
   document.getElementById("location_div").className = "success";

CSS:

代码语言:javascript
运行
复制
.error
{
  color: red;
}
.success
{
  color: black;
}

编辑:将.class更正为.className (使用jquery更容易)

票数 1
EN

Stack Overflow用户

发布于 2010-08-08 21:45:18

老实说,jQuery是处理AJAX调用的最佳方法。这也会大大缩短你的代码!

科长

代码语言:javascript
运行
复制
...
<script type="text/javascript" src="js/jquery.1.4.2.min.js"></script>
<script type="text/javascript">
  $(document).ready(function() {
      $.get('/PP', { PAGE: 'GETLOCATIONNAME', ROUTINGNUM: location }, function(data) {
          if(data == "NOT_FOUND") {
              $('#location_div').addClass('error');
          } else {
              $('#location_div').addClass('success');
          }
      });
  });
</script>

然后您可以使用与gustavogb相同的CSS。

现在,这可能与您希望它做的事情有些不同,但是正如您所看到的,jQuery已经大大缩短了AJAX调用的代码量。另外,我不知道变量“位置”从何而来,但我也包括在调用中。

祝你好运,如果你需要更多的帮助,你可以在jQuery.com上读到更多。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3435975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档