我有存储图像的 ASPX 页面。这些图像的 URL 大约有 2000 个字符。
此 URL 的值是从某处读取的,我无法控制。
我想知道是否有人处理过这种情况。
我有一个重建这个 URL 的 javascript 程序。
所以我想知道,
a) 如何处理长度较长的 URL。(我在 OnInit 中获得了 URL)。由于它们更长,我想使用 javascript 函数来修剪 URL 长度。
b) 一旦我得到重建的 URL(大约 500 个字符),我想将它分配回图像并允许页面加载完成。实现
提前致谢,
更新 0:我想知道如何使用 httpwebrequest 在同一个帖子中发布图片?
更新1:我已经更新了我原来的帖子。
更新 2 Javascript 代码。该代码重构并提交文件。我可以按原样使用这个 javascript,或者我可以只修改 URL,然后将其分配给我的代码隐藏 (OnInit) 中的图像。
<script type="text/javascript">
function posturl(url) {
var qsBegin = url.indexOf("?");
var qsPattern = new RegExp("[?&]([^=]*)=([^&]*)", "ig");
var match = qsPattern.exec(url);
var params = new Array();
while (match != null) {
var matchID = match[1];
if ( matchID.charAt(0) == "&" ) {
matchID = matchID.substr(1);
}
if ( params[match[1]] != null && !(params[match[1]] instanceof Array) ) {
var subArray = new Array();
subArray.push(params[match[1]]);
subArray.push(unescape(match[2]));
params[match[1]] = subArray;
} else if ( params[match[1]] != null && params[match[1]] instanceof Array ) {
params[match[1]].push(unescape(match[2]));
} else {
params[match[1]]=unescape(match[2]);
}
match = qsPattern.exec(url);
}
var myForm = document.createElement("form");
myForm.setAttribute("target", "_blank");
myForm.method="post" ;
myForm.action = url.substring(0,qsBegin) ;
for (var k in params) {
var myInput;
// Check for params with the same name.
if ( params[k] instanceof Array ) {
for ( var i=0; i<params[k].length; i++ ) {
myInput = createFormInput(k, params[k][i]);
myForm.appendChild(myInput) ;
}
} else {
myInput = createFormInput(k, params[k]);
myForm.appendChild(myInput);
}
}
document.body.appendChild(myForm) ;
myForm.submit() ;
document.body.removeChild(myForm) ;
}