作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好吧,我们有一个关于作为 iframe 嵌入的配置文件的星级评级系统,由于其暴露的数据库表等不安全,但这即将到来。现在我们想要将评分值插入到该 iframe 内表单的隐藏字段中(从 1 到 5),并自动提交。我们怎样才能做到这一点?网上的几个例子不起作用。
iframe 内部:
<form action="submit_rating.php" method="POST">
<input type="text" name="1" id="rate1" maxlength="1">
<input type="text" name="2" id="rate2" maxlength="1">
<input type="text" name="3" id="rate3" maxlength="1">
<input type="text" name="4" id="rate4" maxlength="1">
<input type="text" name="5" id="rate5" maxlength="1">
<input type="submit" value="Rate" style="display:none;" />
</form>
iframe:
<iframe src="http://domain.com/submit_rating.php" frameborder="0" scrolling="no" height="10" width="25" name="frame"></iframe>
评级链接:
<a href="howtoinsert?">1</a>
<a href="howtoinsert?">2</a>
<a href="howtoinsert?">3</a>
<a href="howtoinsert?">4</a>
<a href="howtoinsert?">5</a>
谢谢。就像我说的,所有其他示例都是垃圾并且不起作用。
最佳答案
你可以这样做(使用jquery):
评级网站:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
function setRating(rating) {
var frame = $('iframe')[0].contentWindow.document;
$(frame).find('#rate'+rating).val('1');
$(frame).find('form').submit();
}
</script>
</head>
<body>
<iframe src="frame.html" frameborder="0" scrolling="no" height="10" width="25" name="frame"></iframe>
<a href="javascript:setRating(1)">1</a>
<a href="javascript:setRating(2)">2</a>
<a href="javascript:setRating(3)">3</a>
<a href="javascript:setRating(4)">4</a>
<a href="javascript:setRating(5)">5</a>
</body>
</html>
框架内容:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="submit_rating.php" method="POST">
<input type="text" name="1" id="rate1" maxlength="1">
<input type="text" name="2" id="rate2" maxlength="1">
<input type="text" name="3" id="rate3" maxlength="1">
<input type="text" name="4" id="rate4" maxlength="1">
<input type="text" name="5" id="rate5" maxlength="1">
<input type="submit" value="Rate" style="display:none;" />
</form>
</body>
</html>
但更好的方法是使用 ajax:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
function setRating(rating) {
$.post('submit_rating.php', {
rating: rating
});
}
</script>
</head>
<body>
<a href="javascript:setRating(1)">1</a>
<a href="javascript:setRating(2)">2</a>
<a href="javascript:setRating(3)">3</a>
<a href="javascript:setRating(4)">4</a>
<a href="javascript:setRating(5)">5</a>
</body>
</html>
关于javascript - 将文本插入 iframe 表单字段并提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19196691/
我尝试通过正则表达式将文本中的单引号更改为双引号。 (单字)示例:我走了。 You gona fly to planet 'Ziqtos' => 我需要在 I'm 中保留单引号,并在 You gona
我正在构建一个 API,其中大部分将包含 JSON 和 HTML 内容。但是一些非常具体的端点只呈现 true 或 false,并且还在 POST 中接受 true 或 false。这是请求或响应的整
我是一名优秀的程序员,十分优秀!