我正在尝试将特定变量值从脚本标记传递到输入标记。但不知怎的,它不起作用。
我正在尝试将以下代码中的variable1
值从script标记传递到输入标记。
假设variable1
值为John
,那么我的代码中的这一行将如下所示 -
<input ONCLICK="window.location.href='some_url&textId=John'">
以下是代码
<html>
<head>
<title>Applying</title>
</head>
<body>
<script>
function getUrlVars() {
// some code
}
var variable1 = getUrlVars()["parameter1"];
var variable1 = unescape(variable1);
// some more code
</script>
<input ONCLICK="window.location.href='some_url&textId=variable1'">
</body>
</html>
有人能解释我在做什么错吗?
答案 0 :(得分:1)
以这种方式尝试:
var variable1 = getUrlVars()["parameter1"];
variable1 = unescape(variable1);
document.getElementById('Apply').onclick = function() {
window.location.href = 'some_url&textID=' + variable1;
};
将一个函数附加到onclick事件上,该事件完全符合您的要求。对于初始输入元素,只需删除onclick属性:
<input name="Apply" type="button" id="Apply" value="Apply" />
答案 1 :(得分:0)
如果您尝试将click处理程序绑定到此input元素,我会将其更改为以下内容:
<html>
<head>
<title>Applying</title>
</head>
<body>
<script>
function getUrlVars() {
// some code
}
var variable1 = getUrlVars()["parameter1"];
var variable1 = unescape(variable1);
document.getElementById("Apply").onclick = function() {
window.location.href='some_url&textId=' + variable1;
}
// some more code
</script>
<input name="Apply" type="button" id="Apply" value="Apply" >
</body>
</html>
我还没有测试过,但它应该有用。
答案 2 :(得分:0)
如果您希望执行内联函数,则需要将代码包装在可执行的闭包中:
<input name="Apply" type="button" id="Apply" value="Apply" ONCLICK="(function() {window.location.href='your_data'})();">
由于这在很大程度上是不可维护的,我建议您将此功能抽象到应用程序中更有条理的位置。
(function(window, $, undefined) {
// assuming you use jQuery
$('#Apply').click(function() {
window.location.href = '';// your code
})
})(window, $);
我可能完全误解了你想做什么,但我希望这会有所帮助。
答案 3 :(得分:0)
整个url参数位肯定是不必要的。
您只需在字段中设置value属性:
var field = document.getElementById('textfield');
var value = 'Some text';
field.addEventListener("click", function () {
this.setAttribute('value', value);
});
这是一个jsfiddle示例:http://jsfiddle.net/LMpb2/
答案 4 :(得分:0)
你需要将它添加到字符串中。所以试试
"window.location.href='some_url&textId='+variable1+';'"
答案 5 :(得分:0)
在onclick上调用一个函数,在函数集window.location.href里面!
样本
<script>
var url="www.google.com";
function myfunc(){
alert(url);
}
</script>
<input type="button" onclick="myfunc()" value="btn" >