javascript不会影响xmlhttprequest数据?

时间:2014-05-09 22:18:14

标签: javascript razor

我有这个javascript代码:

function ajax(str) {
var xmlhttp;
if (str.length==0)
  { 
  document.getElementById("c-c").innerHTML="";
return;
}
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        document.getElementById("c-c").innerHTML = xmlhttp.responseText;
    }
}
if (str.length == null){
    document.getElementById("c-c").innerHTML("");
}else{
     xmlhttp.open("GET", "search.cshtml/" + str, true);
xmlhttp.send();
}

}

这将显示此文件中名为search.cshtml的数据到另一个名为users.cshtml的文件:

<div class="c_c1" id="c_c1">

<ul>
<li class="c1">Students</li>

    @foreach (var nom in sql){
     <li><img alt="miniatura"  src="@Href("~/Photo/Thumbnail2", nom.UserId, new { size="small" })" class="thumbnail-border thumb22" />@nom.Nombre @nom.Apellido</li>
}


<li class="c1">Subjects</li>
@foreach (var sub in sql2){
     <li class="hola"><img alt="miniatura"  src="@Href("~/Photo/Thumbnail", sub.Sub_Id,    new { size="large" })" class="d" />@sub.Subject</li>
}

</ul>

</div>

我的问题是,我在users.cshtml上使用的javascript会影响search.cshtml文件中的类,例如$(&#34; c_c1&#34;)。width();等(这种类型的javascript,而不是xmlhttprequest之一)将无法正常工作。就像其他javascript无法识别插入users.cshtml文件中的数据一样。有什么问题?我已经尝试将链接放入每个文件的标题中,它仍然不会影响这些数据。

1 个答案:

答案 0 :(得分:0)

这段代码多久了?

嗯,您需要了解您正在尝试使用不存在的元素。每次引用都将返回null:

 document.getElementById("c-c")

您的标记中没有ID为c-c的元素。鉴于标记中的类和Id名称,很难确定您要做什么...如果您希望使用具有类而不是Id的元素,您可能需要查看这样:

https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector