我正在构建一个多语言Web应用程序,其中我有一个.aspx.cs文件
public partial class example:System.Web.UI.Page
{
private string message="message to be displayed depending on user language";
public string Message
{
get{return message;}
set{}
}
}
和.aspx文件,其中我链接了一个用于验证用户输入的javascript文件
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<script type="text/javascript" src="Scripts/DataValidation.js"></script>
</head>
<body>
<form id="form1" runat="server" onsubmit="return validation()">
<asp:TextBox ID="tbSupplierName" CssClass="marginspace" runat="server" Width="150px" MaxLength="30"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="Search"
onclick="btnSearch_Click" />
</form>
</body>
</html>
我的DataValidation.js文件就像这样
function validation()
{
var SupplierName = document.getElementById('tbSupplierName');
if (SupplierName.value.length == 0)
{
alert('please enter supplier name');//here i want to display server side variable 'message'
return false;
}
}
问题是我想传递我的服务器端变量&#39; message&#39;到链接的外部JavaScript文件DataValidation.js并在alert
中显示它我已尝试过以下代码,但它无效
function validation()
{
var message='<%=Message%>';
var SupplierName = document.getElementById('tbSupplierName');
if (SupplierName.value.length == 0)
{
alert(message);
return false;
}
}
帮我解决问题。谢谢。
答案 0 :(得分:4)
您可以在ASP.NET页面中声明全局JavaScript变量
<script>
message='<%=Message%>';
</script>
然后你可以直接在JS文件中使用它
function validation() {
var SupplierName = document.getElementById('tbSupplierName');
if (SupplierName.value.length == 0) {
alert(message);
return false;
}
}