I';我用jQuery在下拉列表中选择了问题设置
参见示例。单击总裁标题中的I';我用jQuery在下拉列表中选择了问题设置,jquery,forms,selectedvalue,Jquery,Forms,Selectedvalue,参见示例。单击总裁标题中的[给我发电子邮件]应该会打开与从下拉列表中选择的网站管理员的联系表单,但这不会发生 我知道这应该很琐碎,但事实并非如此get在email()中的东西工作正常,但是当它进入到选择选项时,代码就失效了。所有相关代码如下 我的HTML: <form method="get"> <select name="to" id="to-field"> <option name="President" value="President"&
[给我发电子邮件]
应该会打开与从下拉列表中选择的网站管理员的联系表单,但这不会发生
我知道这应该很琐碎,但事实并非如此get
在email()
中的东西工作正常,但是当它进入到选择选项时,代码就失效了。所有相关代码如下
我的HTML:
<form method="get">
<select name="to" id="to-field">
<option name="President" value="President">President</option>
<option name="Webmaster" value="Webmaster">Webmaster</option>
</select>
</form>
这是由以下因素引发的:
<span onclick="javascript:email('Webmaster');">[Email Me]</span>
我还尝试使用以下方法设置“选定”:
$("select#to-field[value=" + to + "]").attr("selected","selected");
即使是这一点也值得注意:
$("select#to-field[value=" + to + "]").attr("selected",true);
任何帮助都将不胜感激 您的$.get是一个异步事件!!事实上,你的
if(to !== undefined){
$('select#to-field').val(to);
console.log( 'item selected -> ' + $('select#to-field').val() );
}
将在内部电子邮件页面加载完成之前执行!将该部分放在$中。在加载电子邮件页面后进行回调
像这样把它夹在中间
$('#email-form').html(data);
//RIGHT HERE
if(to !== undefined){
$('select#to-field').val(to);
console.log( 'item selected -> ' + $('select#to-field').val() );
}
//
$('#email-form form').submit( function(){...
当我测试你的代码时,它运行得非常好。告诉我,[给我发电子邮件]-它和表格在同一页吗?你能把所有代码都放在一个文件里吗。因此,我们不必猜测。让我快速创建一个JSFIDLE。实际上,有了所有的GET和内容,只需链接到页面就更容易了。这是一个不起作用的例子。总统标题上的[给我发电子邮件]应该会打开与所选网站管理员的联系表单,但事实并非如此。我认为这可能与AJAX负载有关,但我不确定如何测试。我以前尝试过,但在我这样做时,什么都没有发生<代码>控制台.log
不会启动,也不会进行任何选择。仅供参考,如果您希望看到代码不起作用,我已经按照您的建议获得了代码。请参阅我的重做注释,我将添加$.get。抱歉,您的成功回调是在电子邮件提交之后!不,这是在$.get之后完成的,而不是在ajax成功之后完成的。万分感谢!
if(to !== undefined){
$('select#to-field').val(to);
console.log( 'item selected -> ' + $('select#to-field').val() );
}
$('#email-form').html(data);
//RIGHT HERE
if(to !== undefined){
$('select#to-field').val(to);
console.log( 'item selected -> ' + $('select#to-field').val() );
}
//
$('#email-form form').submit( function(){...