我希望使用onClick="return confirm('are you sure ?')"
让用户确认他们提交的内容。
基本形式是:
<form>
<Select name='val[]' class='select'><option></option><option value='a'>a</option><option value='b'>b</option><option value='c'>c</option><option value='d'>d</option></select>
<Select name='opt'><option>AAA</option><option>BBB</option><option>CCC</option></select>
<input type='submit' name='submit' value='submit' onClick="return confirm('are you sure ?')">
</form>
当他们点击提交时,如何更新退货确认以显示他们从下拉列表中选择的值?
修改
我应该提到这个页面正在使用http://harvesthq.github.io/chosen/
中的Jquery Chosen脚本第一个选项是多选,并使用选择使其看起来更好。
来自 dishwasherWithProgrammingSkill 的建议有效,但未显示所选的多值。
无论如何要做到这一点?
更新
使用:var opt3=$('#opt1').val();
返回一个以逗号分隔的列表。如何删除逗号?
由于
答案 0 :(得分:1)
最好将您的javascript与表单分开,然后添加一个事件监听器。但是,如果您仍想使用onclick
,则可以为每个表单元素添加id
,并使用getElementById()
获取值 -
<form>
<select name='val[]' id='val' class='select'><option></option><option value='a'>a</option><option value='b'>b</option><option value='c'>c</option><option value='d'>d</option></select>
<select name='opt' id='opt'><option>AAA</option><option>BBB</option><option>CCC</option></select>
<input type='submit' name='submit' value='submit' onClick="return confirm('are you sure? val='+getElementById('val').value +' opt='+getElementById('opt').value)" />
</form>
请参阅此jsFiddle示例 - http://jsfiddle.net/rpcBS/
答案 1 :(得分:1)
我认为这就是你要找的东西。
<form>
<select name='val' class='select' id='opt1'>
<option></option>
<option value='a'>a</option>
<option value='b'>b</option>
</select>
<select name='opt' id='opt2'>
<option value='AAA'>AAA</option>
<option value='BBB'>BBB</option>
</select>
<input type='submit' name='submit' value='submit' onClick="return function1();">
</form>
<script type='text/javascript'>
function function1(){
var opt1=document.getElementById("opt1").value;
var opt2=document.getElementById("opt2").value;
var response=confirm("Are you sure? option1="+opt1+" option2="+opt2);
return response;
}
</script>
<强>更新强>
由于您已经使用var opt3=$('#opt1').val();
获得了值,其余的很容易,请在javascript中使用split()函数。它类似于php中的explode()函数。
这是样本。
var opt3=$('#opt1').val();
var valArray=opt3.split(","); //The parameter determines where you want to split.
for (var i = 0; i < valArray.length; i++) {
alert(valArray[i]);
}
答案 2 :(得分:0)
您需要侦听onSubmit()而不是onClick()
<form onSubmit="return confirm('are you sure?);">
<Select name='val[]' class='select'><option></option><option value='a'>a</option><option value='b'>b</option><option value='c'>c</option><option value='d'>d</option></select>
<Select name='opt'><option>AAA</option><option>BBB</option><option>CCC</option></select>
<input type='submit' name='submit' value='submit'>
</form>
onClick不会阻止表单提交。
答案 3 :(得分:0)
你必须为它编写一个函数。使用jquery,你可以使用$(form).submit(function(){});要在提交时提取您的值,请显示确认对话框并设置内容。
让我知道你是怎么做的!