如何使用变量输入参数到动作标签? 例如:html里面的Javascript
var actionurl="some url"
windowhandle.document.write('<form name=sample action=actionurl method="post" </form>');
windowhandle.document.sample.submit();
这是行不通的。我得到404页未找到错误。请给我一种替代方法
如何使用变量输入参数到动作标签? 例如:html里面的Javascript
var actionurl="some url"
windowhandle.document.write('<form name=sample action=actionurl method="post" </form>');
windowhandle.document.sample.submit();
这是行不通的。我得到404页未找到错误。请给我一种替代方法
您没有在您的表单中设置actionurl
的值。试试这个:
windowhandle.document.write('<form name=sample action=' + actionurl + 'method="post"> </form>');
编辑:你也缺少了“>”我现在已经增加。
@onitake - 好的发现,我修改了。 – 2011-05-03 14:35:23
试试这个:
var actionurl="some url"
windowhandle.document.write('<form name=sample action='+ actionurl +' method="post" </form>');
windowhandle.document.sample.submit();
你可以使用Python的.format()
功能:
String.prototype.format = function() {
var str = this;
var i = 0;
var len = arguments.length;
var matches = str.match(/{}/g);
if(!matches || matches.length !== len) {
throw "wrong number of arguments";
}
while(i < len) {
str = str.replace(/{}/, arguments[i]);
i++;
}
return str;
};
只是,代码粘贴到你的脚本,它可以让你使用该功能。
Python的.format()
是干净的字符串操作有用:
'I {} a {}'.format('am', 'string')
// I am a string
它只是取代了括号子与函数的参数。
现在,你的新代码将是这样的:
var actionurl="some url"
windowhandle.document.write('<form name="sample" action="{}" method="post"></form>'.format(actionurl));
windowhandle.document.sample.submit();
一定要使用周围的属性报价!
他没有使用Python ... – Andrea 2011-05-03 14:32:57
Python的.format()?你能澄清一下吗? :) – rzetterberg 2011-05-03 14:33:51
我知道。它是一个来自Python的'.format()'的JavaScript实现。我虽然OP想要一种方法来插入字符串而不使用加号。 – Blender 2011-05-03 14:34:17
感谢大家。它的工作很好:) – Suki 2011-05-03 14:52:55
优秀。请接受答案:)请参阅每个人左侧的勾号。 – 2011-05-04 09:20:30