js调试,对象不支持此属性或方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js调试,对象不支持此属性或方法相关的知识,希望对你有一定的参考价值。
js方法
function changepass()
var newpass = document.getElementById("newPass").value;
var newpass2 = document.getElementById("newPass2").value;
var oldpass = document.getElementById("oldPass").value;
var b;
changepass.Change(oldpass, newpass, newpass2, function (resp)
b= resp.value;
);
if (b == 1)
alert("与原密码不匹配");
.cs文件方法
Method ms = new Method();
protected void Page_Load(object sender, EventArgs e)
AjaxPro.Utility.RegisterTypeForAjax(typeof(changepass));
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public string Change(String oldPass, String newPass, String newPass2)
string b="";
int User_ID = Convert.ToInt32(Session["User_ID"].ToString());
DataTable dt = new DataTable();
dt = ms.getUserByID(User_ID);
if (oldPass != dt.Rows[0]["Password"].ToString())
b = "1";
return b;
js调试为对象不支持此属性或方法。怎么解决,页面名称就是js方法里面的changepass
js调用这个方法是才报错的: changepass.Change(oldpass, newpass, newpass2, function (resp)
b= resp.value;
);
对象不支持此属性或方法。
<httpHandlers>
<add verb="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>追问
已经配置,错误一样
追答你后台的Change就三个参数,你这个前台调用这个参数是干啥的
function (resp)
b= resp.value;
用一个变量去接收 Change方法返回来的值就行了
var b=changepass.Change(oldpass, newpass, newpass2);
js中使用indexOf()方法是提示(对象不支持此属性或方法)如何解决?
参考技术Ajs中使用indexOf()方法是提示(对象不支持此属性或方法)解决办法:
“对象不支持此属性或方法” 表示 javascript对象没有这个方法,无法调用,比如
A.B() 当A对象没有B方法的时候,会报这个异常。
因为javascript是脚本语言,解释执行,所以只有在执行的过程中才会报错,而编译语言,像java,c等在编译的时候就会报错。
A.indexOf() 在原生JS中只能用于String对象,比如var s=“123”; alert(s.indexOf("1")) // 不会报错
var s=123; alert(s.indexOf("1")) // 报错,因为s是number,这时候你需要把s转换成string才可以运行。
如以上回答未解决问题,请尝试:
var parr = ["a","b","c","d"];
判断parr 数组中是否存在a
parr.indexOf("a")==-1 在ie8下会提示对象不支持indexOf属性或方法
解决办法:
用jquery里的$.inArray替代indexOf
$.inArray(“a”, parr)==-1
以上是关于js调试,对象不支持此属性或方法的主要内容,如果未能解决你的问题,请参考以下文章
“对象不支持此属性或方法”试了很多方法,换了浏览器还是解决不了