我有aspx项目,它是基于文本框值的基本搜索。我从网址获得的值如下所示:
location=/Users/Skull/Desktop
DAY=$(date +"%Y-%m-%d"| awk '{print $1$2$3}')
#2016-09-08
DATA_FOLDER=
我使用我的JavaScript代码获取字符串并将其设置为asp的文本框值继续:
/default.aspx?V1A%202B3
所以从这里我得到了很好的普通值“V1A 2B3”,我用它来搜索。它可以工作,但如果我手动将搜索字符串输入文本框,则网址仍然具有旧字符串,以及单击搜索按钮后的文本框。有什么办法可以解决吗?我试图用<script>
var url = window.location.href;
if((url).indexOf('?') != -1) {
var queryString = (url).substr((url).indexOf('?') + 1);
var str1 = queryString.replace(/%20/g, ' ');
var str2 = str1.replace('+', ' ');
document.getElementById("TextBox1").value = str2;
if (typeof (history.pushState) != "undefined") {
var obj = { Url: 'Default.aspx' };
history.pushState(obj, obj.Title, obj.Url);
}
}
</script>
将其删除。它不会显示在网址栏中,但仍然是文本框值。我在asp的搜索框:
history.pushState
答案 0 :(得分:0)
所以我使用了Shannon的答案并使其在服务器端工作:
string v = Request.QueryString["code"];
if (v != null)
{
TextBox1.Text = v;
}
现在,网址如下所示:default.aspx?code=1v5a1c