之前我是在.cs文件里顶一个字符串 string a = "123.321";然后使txtbox1.text = a; 再在js文件里定义 var i = document.all.("txtbox1.text").value;得到我要的值;
现在我想省去txtbox这一步,直接将string里面的数字传给js里的变量
昨天发帖问了,也试了各位前辈教的方法
定义公共变量 public string a = "123.321";
然后在js里定义 var i = <%=a%>;
但是一直运行不成功。在上述表达式的<下方一直有条波浪线 指明“应为表达式”。
也试了别的方法 如var i = document.getElementById('a').value; 也不对。
现在我想省去txtbox这一步,直接将string里面的数字传给js里的变量
昨天发帖问了,也试了各位前辈教的方法
定义公共变量 public string a = "123.321";
然后在js里定义 var i = <%=a%>;
但是一直运行不成功。在上述表达式的<下方一直有条波浪线 指明“应为表达式”。
也试了别的方法 如var i = document.getElementById('a').value; 也不对。
解决方案 »
- 类型"System.Int64"的对象无法转换为类型"System.String"
- 第一次做商城,求教关于数据库如何设计
- 有哪位碰见过,网站时而断掉,时而好使
- 我来问个简单的问题,关于DataList和GridView的问题
- 求大家帮小弟一个忙,看看这个存储过程哪错呢?
- 求助:后台添加的数据在前台显示的格式怎么控制?
- 请教:求一条datagrid相同单元格合并列的循环语句
- 朋友们:我想请教一下,datalist控件使用问题,谢谢朋友们
- 思归等大侠,关于授权问题,进来帮帮忙,急着写东西!!
- 怎么在xsl模板里写一个form,把其中的内容传送给其他的aspx文件?
- 【超奇怪】:今天服务器上所有网站的js调用都不能用
- 关于.net页面抓取的问题,跪求!!!
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
var yourName = '<%=YourName %>';
alert(yourName);
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
YourName = "中国";
}
}
protected String YourName { get; set; }
}
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
</title>
<script type="text/javascript">
var yourName = '中国';
alert(yourName);
</script>
</head>
<body>
<form name="form1" method="post" action="Default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNzgzNDMwNTMzZGQuL7vWazEjZ/BhyBahYCuu5QYcng==" />
</div>
<div>
</div>
</form>
</body>
</html>
不过我主要是想要string里面的数字。而且不是在html文件里面写,是在网站里面script文件夹里的js文件里面
Page.ClientScript.RegisterStartupScript(this.GetType(), "js", "clk(" + a+ ")",true);
function clk(str)
{
alert(str);
}
然后在js里定义 var i = "<%=a%>";
string a ="123";
string b ="321";
使用Page.ClientScript.RegisterStartupScript(this.GetType(), a, b,true);然后在jscript文件里定义
function DataQuery()
{
}
定义两个变量 var i ;var j;怎么能得到之前字符串a,b里面的数值?
<script type="text/javascript">
var h="<%= ss%>";
alert(h);
</script>
======
public partial class Default2 : System.Web.UI.Page
{
public string ss = "";
protected void Page_Load(object sender, EventArgs e)
{ }
}
运行页面 弹出 0.ffffffffffffffff哈哈哈
public partial class Default2 : System.Web.UI.Page
{
public string ss = "0.ffffffffffffffff哈哈哈";
protected void Page_Load(object sender, EventArgs e)
{ }
}
比如
function DataQuery(c,d)
{
}然后
Page.ClientScript.RegisterStartupScript(this.GetType(), "js", "DataQuery(" + a+","+b+ ")",true);红色部分就是你写的方法名
非要使用的话,可以把隐藏域加上一个
hddInput.Value = a;
那么js文件中直接document.GetElementById("hddInput").Value获得
public partial class _Default : System.Web.UI.Page
{
public string aaa = "117085.647785";
public string bbb = "3174122.542270";
protected void Page_Load(object sender, EventArgs e)
{ }
然后我有个HTML INPUT控件需要调用script文件夹里某个文件里面的函数 function GPSQuery();
而且string aaa,bbb的值需要传到这个函数里使用。
试过楼上几位前辈交的方法都不正确。
之前是将string的值先传给txtbox里面再在js函数里调用。为什么现在想直接将string的值传过去就一直不成功。由于我需要传入的数据比较多,如果都通过txtbox来中转的话,页面效果就太凌乱了
function GPSQuery(a,b)
{
// var a =aaa;
var latitude1 = Number(a);
// var b =bbb;
var lontitude1 =Number(b);
window.curMapControl.ViewByPoint(latitude1,lontitude1);
}然后在aspx里面,让INPUT BUTTON使用者这个函数<input id="Button2" type="button" value="显示历史路径" onclick="GPSQuery()" />
你在.js文件里有个 函数 function GPSQuery() ,
函数里边定义了俩变量 i,j
你在html里面调用了,
而你想把.cs里的俩变量a,b直接赋值给i,j使用
是这样吧。。这个我也不太懂
把i,j直接搞成GPSQuery()的参数行不行啊?期待高手。
function GPSQuery(a,b)
{
var latitude1 = document.all("txtLat1").value;
var lontitude1 = document.all("txtLon1").value;
window.curMapControl.ViewByPoint(latitude1,lontitude1);
}其中 txtlat1.text = aaa;
txtlon1.text = bbb;
function aaa()
{
var a="<%= str1%>";
var b="<%= str2%>";
GPSQuery(a,b);
}</script>
//上面的js 一定要写在 aspx页面里
在你需要调用 GPSQuery 方法的地方用 aaa 来代替。
直接写在aspx页面中才可以的。
之前测试运行的时候在页面上放了10个txtbox,实在是不够美观啊
之前测试运行的时候在页面上放了10个txtbox,实在是不够美观啊
我说的办法不管用吗? 我建议你试下 把 js的变量定义在 aspx页面里,然后再调用你 js外部文件里的方法,把值传进去。如果想在外部js文件中直接获取 cs 后台变量,直接定义不行的。
{
public string str1 = "tmd1";
public string str2 = "tmd2";
protected void Page_Load(object sender, EventArgs e)
{
}function GPSQuery()
{
var a = "<%=str1%>";
var b = "<%=str2%>"; alert(a+' '+b);
}<input id="Button2" type="button" value="显示历史路径" onclick="GPSQuery()" />
这个能 TMD 不行???
我做的是GPS定位。通过获取GPS坐标然后在地图上显示。
GPS信号是我自己写在一个txt文件里的,所以提取出来存放在一个字符串数组里面,再经过处理将提取到的经纬度数据存放在字符串里。
而在地图上显示坐标点的方法是Ajaxscripts方法,所以在JS里面写了函数,并用到我在外面得到的经纬度字符串数据。
用了前辈你教的方法,在aspx里面定义变量,但最后还是没有显示出结果
http://blog.csdn.net/net_boy/archive/2006/11/24/1412460.aspx
自己写了个类文件 ReadFile.CS
public class ReadFile
{
public ReadFile()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
public string[] ReadFiletext()
{
string path = @"E:\GPS数据.txt";
string[] mystr;
mystr = new string[5];
...
return (mystr);}
然后在Default.aspx.cs:
public partial class _Default : System.Web.UI.Page
{
ReadFile gps;
string[] londata = new string[5];
string[] latdata = new string[5];
public string aaa = "117085.647785";
public string bbb = "3174122.542270";
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
gps = new ReadFile();
string[] gpsArr = gps.ReadFiletext();
for (int i = 0; i < gpsArr.Length; i++)
{
string strTemp = gpsArr[i];
string[] lineArr = strTemp.Split(',');
if (lineArr[0] == "$GPGGA")
{
latdata[i] = lineArr[2];
londata[i] = lineArr[4];
}
其中 latdata[]和lonArr就是我需要传递到 script/GPStext.js里面 函数 function GPSQuery()里面要用的数据
script/GPStext.js文件中的,你只能在GPStext.js用到的字符串用变量代替,在aspx里写
<script>
var xxx="<%=%>"
</script>
<script src="script/GPStext.js"></script>xxx这个变量可以在 GPStext.js 使用。你不能把
var xxx="<%=%>"
写在
GPStext.js文件中
protected void Button1_Click(object sender, EventArgs e)
{
string a = "1";
string b = "2";
Page.ClientScript.RegisterStartupScript(this.GetType(), "js", "DataQuery(" + a + "," + b + ")", true);
}
default.aspx<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Web1._Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<script language="JavaScript" type="text/javascript" src="Scripts/1.js"></script>
<script language=javascript>
function DataQuery(c,d)
{
GPSQuery(c,d);
} </script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div>
</form>
</body>
</html>
1.jsfunction GPSQuery(a,b)
{
// var a =aaa;
var latitude1 = Number(a);
// var b =bbb;
var lontitude1 =Number(b);
alert(a);
alert(b);
//window.curMapControl.ViewByPoint(latitude1,lontitude1);
}
然后在js里定义 var i = "<%=a%>";
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="t._Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<script type="text/javascript">
var string = <%=str%>;
alert(string);
</script>
</div>
</form>
</body>
</html>using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;namespace t
{
public partial class _Default : System.Web.UI.Page
{
public string str = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
str = "123";
}
}
}
你aspx那里写下
<script type="text/javascript">
var globals = {};
globals.controlIdentities.a= '<%=a%>';
</script> 然后globals.controlIdentities.a就可以当做js变量用了
1.用ScriptManager.RegisterStartupScript
2.在cs文件中定义public变量,在aspx文件直接赋值,如下:
a.cs文件
public partial class a : System.Web.UI.Page
{
public string aaa = "123";
} a.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="a.aspx.cs" Inherits="a" %>
<html>
<head>
<script>var aaa='<%=aa%>'</script>
</head>
<body>
测试
</body>
</html>
<input type="hidden" value="<%=a %>" name="zzz" id="zzz" >
这样在JS中 只要
var j = document.getElementById("zzz").value;
这样呢
25楼方法可行!LZ你之前都是用TEXT传值,你觉得这样很影响页面美观,那你可以选择用影藏域传值,
和你的TEXT传值用法一样,简单易懂又不影响界面美观