0

我有一个按钮

<button class="modalInput" rel="#prompt" onClick="params(1,2,'test','test2');">User input</button>

JavaScript 调用:

<script>
  function params(a,b,c,d) {
  var catid = a;
  var id = b;
  var text1 = c;
  var text2 = d;
}

模态窗口:

$(document).ready(function() {
var triggers = $(".modalInput").overlay({


<div class="modal" id="prompt">
<form>
<div>
<table>
<tr>
<td>Question:</td><td><input value=text1 name="question" maxlength="80" size="40"/></td>
</tr>
<tr>
<td>Answer:</td><td><input value=text2 name="answer" maxlength="40" size="40"/></td>
</tr>
</table>
<input type="hidden" name="catid" value=catid />
<input type="hidden" name="id" value=id />
<script>
alert (text1);
document.getElementByName('question').value = text1;
</script>

我以为我可以在最后做脚本部分,但这不起作用......那么,我做错了什么?最后一个脚本部分根本没有执行......

4

1 回答 1

0

请注意,使用“var”声明变量会使其成为本地变量。这两行代码没有多大意义:

<input type="hidden" name="catid" value=catid />
<input type="hidden" name="id" value=id />

因为它是纯 HTML。您应该使用 javascript 设置它们的值。

编辑:所以据我了解,您希望 params() 函数设置表单值。你可以这样做(纯 JS,使用 jQuery 更简单):

function params(a,b,c,d) {
  var catid = getElementsByName("catid")[0];
  catid.value = a;
  //same for the other 3
}
于 2013-04-27T11:30:00.330 回答