似乎很简单,仅仅为String对象定义一个trim方法,在asp环境下顺利执行,但保存为str.aspx就不行了!
在第八行出错:<%@ LANGUAGE='JAVASCRIPT'%>
<%
String.prototype.trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
var s = " leading and trailing spaces ";
Response.Write(s.replace(/ /g,"_") + " (" + s.length + ")<br/>");
s = s.trim(); //编译器错误消息: JS1151: “System.String”类型的对象没有这样的成员
Response.Write(s.replace(/ /g,"_") + " (" + s.length + ")<br/>");
%>为什么?为什么?为什么?
本人就是要在asp.net下实现这样的功能!
[color=#FF0000]高分求解!高人速来![/color]
在第八行出错:<%@ LANGUAGE='JAVASCRIPT'%>
<%
String.prototype.trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
var s = " leading and trailing spaces ";
Response.Write(s.replace(/ /g,"_") + " (" + s.length + ")<br/>");
s = s.trim(); //编译器错误消息: JS1151: “System.String”类型的对象没有这样的成员
Response.Write(s.replace(/ /g,"_") + " (" + s.length + ")<br/>");
%>为什么?为什么?为什么?
本人就是要在asp.net下实现这样的功能!
[color=#FF0000]高分求解!高人速来![/color]
String.prototype.trim = function() {
return this.replace(/^[\s\n]+|[\s\n]+$/g, '');
};
s=s.Trim();
return this.replace(/^\s+/,"").replace(/\s+$/,"");
}
试试
不是 trim, 而是 Trim. (It's case sensitive!)
不用自己定义。
asp中jscript,aspx是j#,已经不是jscript,楼主先搞清楚使用环境先。除非你将iis中aspx的处理程序设置为C:\WINDOWS\system32\inetsrv\asp.dll,而不是C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,应该就可以运行了
下面的示例演示为 System.String 类定义的一个扩展方法。请注意,它是在非嵌套、非泛型静态类内部定义的:
namespace ExtensionMethods
{
public static class MyExtensions
{
public static int WordCount(this String str)
{
return str.Split(new char[] { ' ', '.', '?' },
StringSplitOptions.RemoveEmptyEntries).Length;
}
}
}我抄的MSDN啊,不知道你是不是这个意思。
javascript的String对象本身没有trim方法,所以才这样做。
继续找答案!