我知道标题声音与其他一些主题类似,但它有点不同。我有几个像这样的按钮:
<input type=button name=Ok onclick='window.location="www.bla.com/bla.php"'>
当用户按下其中任何一个时,我想要运行javascript或jquery代码,但之后,我想发送到www.bla.com/bla.php。
我有一个用于提交表单的jquery代码:
$( document ).ready(function() {
$(':button').click(function(){
document.getElementById('contact').submit();
});
jquery代码有效,但按钮没有...
答案 0 :(得分:3)
试试这个
<input class="btn" type=button name=Ok data-href="location">
$( document ).ready(function() {
$('.btn').click(function(){
// as you have used jQuery selector you can use it here like this
$('#contact').submit();
var location = $(this).attr("data-href");
window.location.href = location;
});
});
答案 1 :(得分:2)
我的解决方案是基于jQuery的。
此处的语法不正确:
<input type=button name=Ok onclick="www.bla.com/bla.php">
将其修改为:
<input type=button name=Ok data-href="www.bla.com/bla.php">
jQuery的:
$( document ).ready(function() {
$(':button').click(function(){
var hrefCurr = $(this).attr('data-href');
document.getElementById('contact').submit();
window.location.href = hrefCurr;
});
答案 2 :(得分:2)
提交表单后不会执行任何javascript。表单提交更改window.location并停止javascritpt从旧的window.location执行。
但你可以假装它。
使用jquery表单提交表单(如果CORS允许)
或让表单目标位置的脚本重定向到您想要的位置。
或提交到所需的位置并让脚本将表单数据发送到应该去的位置
答案 3 :(得分:1)
这样的事可以胜任这项工作吗?
<input type='button' name='ok_btn' id='ok_btn' value='Ok' data-href="www.bla.com/bla.php" />
$(document).ready(
function() {
$('#ok_btn).on('click',function(){
// Do your stuff
// Finally:
window.location.replace($(this).attr('data-href'));
});
}
);