这里的程序员过去对我解决问题非常有帮助,所以我想问一个Ajax问题。这可能是一个简单的修复,但我对Ajax还不熟悉。
如果结果是“找不到”,我想做的是将responseText的样式更改为红色。否则文本将是黑色的。下面是我使用的脚本:
<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:
...
<table>
<tr>
<td class="ajax_msg">
<div id="location_div"><div>
</td>
</tr>
</table>
...
发布于 2010-08-08 20:48:34
对于这些样式,您应该使用css:
联署材料:
if (reponseText == "NOT_FOUND")
document.getElementById("location_div").className = "error";
else
document.getElementById("location_div").className = "success";
CSS:
.error
{
color: red;
}
.success
{
color: black;
}
编辑:将.class更正为.className (使用jquery更容易)
发布于 2010-08-08 21:45:18
老实说,jQuery是处理AJAX调用的最佳方法。这也会大大缩短你的代码!
科长
...
<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上读到更多。
https://stackoverflow.com/questions/3435975
复制相似问题