2012-04-23 12 views
0
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
<script type="text/javascript"> 
var ts=''; 
function test(value1) 
{ 
// this works when the value1 is a number only but if value1 is a string is does not work 
    var optionsVal = ' '; 
    optionsVal= '<input type="button" onclick="postRun('+value1+')" value="test" /> '; 
    document.getElementById('test').innerHTML = optionsVal; 
} 
function postRun(km) 
{ 
alert(km); 
} 

</script> 
</head> 
<body> 
<% 
String ss="Click Me"; 
%> 
<input type="button" onclick="test('<%=ss%>')" value="Click me" /> 

<div id="test"></div> 

</body> 
</html> 
+1

あなたの質問は? – Joseph

答えて

1

これは、埋め込みコードが出力でエスケープされていないためです。 JSONを使用:

optionsVal= '<input type="button" onclick=\'postRun(' 
    + JSON.stringify(value1) 
    + ')\' value="test" />'; 
+0

それは動作します!ありがとう@トーマスアレン – merz321

+0

JSON2ライブラリを使って古いブラウザでもJSONを利用できるようにしてください。 –

関連する問題